|
template<typename T > |
T | sum (const T *array, Size number) |
| Compute and return the sum of all of the values in the specified array. More...
|
|
template<> |
Float32 | sum (const Float32 *array, Size number) |
|
template<> |
Float64 | sum (const Float64 *array, Size number) |
|
template<typename T > |
void | add (T *destination, const T &scalar, Size number) |
| Add a scalar value to each entry in the destination array, storing the result. More...
|
|
template<> |
void | add (Int32 *destination, const Int32 &scalar, Size number) |
|
template<> |
void | add (Int64 *destination, const Int64 &scalar, Size number) |
|
template<> |
void | add (Float32 *destination, const Float32 &scalar, Size number) |
|
template<> |
void | add (Float64 *destination, const Float64 &scalar, Size number) |
|
template<typename T > |
void | add (Complex< T > *destination, T scalar, Size number) |
|
template<typename T , Size size> |
void | add (VectorND< T, size > *destination, T scalar, Size number) |
|
template<typename T , Size size0, Size size1> |
void | add (MatrixND< T, size0, size1 > *destination, T scalar, Size number) |
|
template<typename T > |
void | add (T *destination, const T *b, Size number) |
| Add each entry of the second array to each entry in the destination array, storing the result. More...
|
|
template<> |
void | add (Int32 *destination, const Int32 *b, Size number) |
|
template<> |
void | add (Int64 *destination, const Int64 *b, Size number) |
|
template<> |
void | add (Float32 *destination, const Float32 *b, Size number) |
|
template<> |
void | add (Float64 *destination, const Float64 *b, Size number) |
|
template<typename T > |
void | add (Complex< T > *destination, const Complex< T > *b, Size number) |
|
template<typename T , Size size> |
void | add (VectorND< T, size > *destination, const VectorND< T, size > *b, Size number) |
|
template<typename T , Size size0, Size size1> |
void | add (MatrixND< T, size0, size1 > *destination, const MatrixND< T, size0, size1 > *b, Size number) |
|
template<typename T > |
void | add (T *destination, const T *a, const T *b, Size number) |
| Add the entries of two arrays and store the result in the destination array. More...
|
|
template<> |
void | add (Int32 *destination, const Int32 *a, const Int32 *b, Size number) |
|
template<> |
void | add (Int64 *destination, const Int64 *a, const Int64 *b, Size number) |
|
template<> |
void | add (Float32 *destination, const Float32 *a, const Float32 *b, Size number) |
|
template<> |
void | add (Float64 *destination, const Float64 *a, const Float64 *b, Size number) |
|
template<typename T > |
void | add (Complex< T > *destination, const Complex< T > *a, const Complex< T > *b, Size number) |
|
template<typename T , Size size> |
void | add (VectorND< T, size > *destination, const VectorND< T, size > *a, const VectorND< T, size > *b, Size number) |
|
template<typename T , Size size0, Size size1> |
void | add (MatrixND< T, size0, size1 > *destination, const MatrixND< T, size0, size1 > *a, const MatrixND< T, size0, size1 > *b, Size number) |
|
template<typename T > |
void | add (T *destination, const T *a, const T &scalar, Size number) |
| Add a scalar value to each entry in the destination array, storing the result. More...
|
|
template<> |
void | add (Int32 *destination, const Int32 *a, const Int32 &scalar, Size number) |
|
template<> |
void | add (Int64 *destination, const Int64 *a, const Int64 &scalar, Size number) |
|
template<> |
void | add (Float32 *destination, const Float32 *a, const Float32 &scalar, Size number) |
|
template<> |
void | add (Float64 *destination, const Float64 *a, const Float64 &scalar, Size number) |
|
template<typename T > |
void | add (Complex< T > *destination, const Complex< T > *a, T scalar, Size number) |
|
template<typename T , Size size> |
void | add (VectorND< T, size > *destination, const VectorND< T, size > *a, T scalar, Size number) |
|
template<typename T , Size size0, Size size1> |
void | add (MatrixND< T, size0, size1 > *destination, const MatrixND< T, size0, size1 > *a, T scalar, Size number) |
|
template<typename T > |
void | negate (T *destination, Size number) |
| Negate each element in the specified array, storing the result in the same array. More...
|
|
template<> |
void | negate (Int32 *destination, Size number) |
|
template<> |
void | negate (Int64 *destination, Size number) |
|
template<> |
void | negate (Float32 *destination, Size number) |
|
template<> |
void | negate (Float64 *destination, Size number) |
|
template<typename T > |
void | negate (Complex< T > *destination, Size number) |
|
template<typename T , Size size> |
void | negate (VectorND< T, size > *destination, Size number) |
|
template<typename T , Size size0, Size size1> |
void | negate (MatrixND< T, size0, size1 > *destination, Size number) |
|
template<typename T > |
void | negate (T *destination, const T *a, Size number) |
| Negate each element in an array, storing the result in a destination array. More...
|
|
template<> |
void | negate (Int32 *destination, const Int32 *b, Size number) |
|
template<> |
void | negate (Int64 *destination, const Int64 *b, Size number) |
|
template<> |
void | negate (Float32 *destination, const Float32 *b, Size number) |
|
template<> |
void | negate (Float64 *destination, const Float64 *b, Size number) |
|
template<typename T > |
void | negate (Complex< T > *destination, const Complex< T > *b, Size number) |
|
template<typename T , Size size> |
void | negate (VectorND< T, size > *destination, const VectorND< T, size > *b, Size number) |
|
template<typename T , Size size0, Size size1> |
void | negate (MatrixND< T, size0, size1 > *destination, const MatrixND< T, size0, size1 > *b, Size number) |
|
template<typename T > |
void | subtract (T *destination, const T &scalar, Size number) |
| Subtract a scalar from each element of the destination array, storing the result in the destination. More...
|
|
template<> |
void | subtract (Int32 *destination, const Int32 &scalar, Size number) |
|
template<> |
void | subtract (Int64 *destination, const Int64 &scalar, Size number) |
|
template<> |
void | subtract (Float32 *destination, const Float32 &scalar, Size number) |
|
template<> |
void | subtract (Float64 *destination, const Float64 &scalar, Size number) |
|
template<typename T > |
void | subtract (Complex< T > *destination, T scalar, Size number) |
|
template<typename T , Size size> |
void | subtract (VectorND< T, size > *destination, T scalar, Size number) |
|
template<typename T , Size size0, Size size1> |
void | subtract (MatrixND< T, size0, size1 > *destination, T scalar, Size number) |
|
template<typename T > |
void | subtract (T *destination, const T *b, Size number) |
| Subtract each entry of the second array from the destination array and store the result in the destination. More...
|
|
template<> |
void | subtract (Int32 *destination, const Int32 *b, Size number) |
|
template<> |
void | subtract (Int64 *destination, const Int64 *b, Size number) |
|
template<> |
void | subtract (Float32 *destination, const Float32 *b, Size number) |
|
template<> |
void | subtract (Float64 *destination, const Float64 *b, Size number) |
|
template<typename T > |
void | subtract (Complex< T > *destination, const Complex< T > *b, Size number) |
|
template<typename T , Size size> |
void | subtract (VectorND< T, size > *destination, const VectorND< T, size > *b, Size number) |
|
template<typename T , Size size0, Size size1> |
void | subtract (MatrixND< T, size0, size1 > *destination, const MatrixND< T, size0, size1 > *b, Size number) |
|
template<typename T > |
void | subtract (T *destination, const T *a, const T *b, Size number) |
| Subtract an array from another and store the result in the destination array. More...
|
|
template<> |
void | subtract (Int32 *destination, const Int32 *a, const Int32 *b, Size number) |
|
template<> |
void | subtract (Int64 *destination, const Int64 *a, const Int64 *b, Size number) |
|
template<> |
void | subtract (Float32 *destination, const Float32 *a, const Float32 *b, Size number) |
|
template<> |
void | subtract (Float64 *destination, const Float64 *a, const Float64 *b, Size number) |
|
template<typename T > |
void | subtract (Complex< T > *destination, const Complex< T > *a, const Complex< T > *b, Size number) |
|
template<typename T , Size size> |
void | subtract (VectorND< T, size > *destination, const VectorND< T, size > *a, const VectorND< T, size > *b, Size number) |
|
template<typename T , Size size0, Size size1> |
void | subtract (MatrixND< T, size0, size1 > *destination, const MatrixND< T, size0, size1 > *a, const MatrixND< T, size0, size1 > *b, Size number) |
|
template<typename T > |
void | subtract (T *destination, const T *a, const T &scalar, Size number) |
| Subtract a scalar from an array and store the result in the destination array. More...
|
|
template<> |
void | subtract (Int32 *destination, const Int32 *a, const Int32 &scalar, Size number) |
|
template<> |
void | subtract (Int64 *destination, const Int64 *a, const Int64 &scalar, Size number) |
|
template<> |
void | subtract (Float32 *destination, const Float32 *a, const Float32 &scalar, Size number) |
|
template<> |
void | subtract (Float64 *destination, const Float64 *a, const Float64 &scalar, Size number) |
|
template<typename T > |
void | subtract (Complex< T > *destination, const Complex< T > *a, T scalar, Size number) |
|
template<typename T , Size size> |
void | subtract (VectorND< T, size > *destination, const VectorND< T, size > *a, T scalar, Size number) |
|
template<typename T , Size size0, Size size1> |
void | subtract (MatrixND< T, size0, size1 > *destination, const MatrixND< T, size0, size1 > *a, T scalar, Size number) |
|
template<typename T > |
T | product (const T *array, Size number) |
| Compute and return the product of all of the values in the specified array. More...
|
|
template<> |
Float32 | product (const Float32 *array, Size number) |
|
template<> |
Float64 | product (const Float64 *array, Size number) |
|
template<typename T > |
T | norm (const T *array, Size number) |
| Compute and return the euclidean norm (length) of the specified vector. More...
|
|
template<> |
Float32 | norm (const Float32 *array, Size number) |
|
template<> |
Float64 | norm (const Float64 *array, Size number) |
|
template<typename T > |
T | dot (const T *a, const T *b, Size number) |
| Compute and return the dot product of the values in the two given arrays. More...
|
|
template<> |
Float32 | dot (const Float32 *a, const Float32 *b, Size number) |
|
template<> |
Float64 | dot (const Float64 *a, const Float64 *b, Size number) |
|
template<typename T > |
void | multiply (T *destination, const T &scalar, Size number) |
| Multiply each entry in the destination array by a scalar and store the result in the destination. More...
|
|
template<> |
void | multiply (Int32 *destination, const Int32 &scalar, Size number) |
|
template<> |
void | multiply (Int64 *destination, const Int64 &scalar, Size number) |
|
template<> |
void | multiply (Float32 *destination, const Float32 &scalar, Size number) |
|
template<> |
void | multiply (Float64 *destination, const Float64 &scalar, Size number) |
|
template<typename T , Size size> |
void | multiply (VectorND< T, size > *destination, T scalar, Size number) |
|
template<typename T > |
void | multiply (T *destination, const T *b, Size number) |
| Multiply each entry in the destination array by another array entry and store the result in the destination. More...
|
|
template<> |
void | multiply (Int32 *destination, const Int32 *b, Size number) |
|
template<> |
void | multiply (Int64 *destination, const Int64 *b, Size number) |
|
template<> |
void | multiply (Float32 *destination, const Float32 *b, Size number) |
|
template<> |
void | multiply (Float64 *destination, const Float64 *b, Size number) |
|
template<typename T , Size size> |
void | multiply (VectorND< T, size > *destination, const VectorND< T, size > *b, Size number) |
|
template<typename T > |
void | multiply (T *destination, const T *a, const T *b, Size number) |
| Multiply the elements in two arrays and store the result of each multiplication in the destination. More...
|
|
template<> |
void | multiply (Int32 *destination, const Int32 *a, const Int32 *b, Size number) |
|
template<> |
void | multiply (Int64 *destination, const Int64 *a, const Int64 *b, Size number) |
|
template<> |
void | multiply (Float32 *destination, const Float32 *a, const Float32 *b, Size number) |
|
template<> |
void | multiply (Float64 *destination, const Float64 *a, const Float64 *b, Size number) |
|
template<> |
void | multiply (Complex< Float32 > *destination, const Complex< Float32 > *a, const Complex< Float32 > *b, Size number) |
|
template<typename T , Size size> |
void | multiply (VectorND< T, size > *destination, const VectorND< T, size > *a, const VectorND< T, size > *b, Size number) |
|
template<typename T > |
void | multiply (T *destination, const T *a, const T &scalar, Size number) |
| Multiply the elements in an array by a scalar and store the result in the destination array. More...
|
|
template<> |
void | multiply (Int32 *destination, const Int32 *a, const Int32 &scalar, Size number) |
|
template<> |
void | multiply (Int64 *destination, const Int64 *a, const Int64 &scalar, Size number) |
|
template<> |
void | multiply (Float32 *destination, const Float32 *a, const Float32 &scalar, Size number) |
|
template<> |
void | multiply (Float64 *destination, const Float64 *a, const Float64 &scalar, Size number) |
|
template<typename T , Size size> |
void | multiply (VectorND< T, size > *destination, const VectorND< T, size > *a, T scalar, Size number) |
|
template<typename T > |
void | multiplyAdd (T *destination, const T &scalar, Size number) |
| Multiply each entry in the destination by a scalar, then add the result to the destination array entry. More...
|
|
template<> |
void | multiplyAdd (Int32 *destination, const Int32 &scalar, Size number) |
|
template<> |
void | multiplyAdd (Int64 *destination, const Int64 &scalar, Size number) |
|
template<> |
void | multiplyAdd (Float32 *destination, const Float32 &scalar, Size number) |
|
template<> |
void | multiplyAdd (Float64 *destination, const Float64 &scalar, Size number) |
|
template<typename T , Size size> |
void | multiplyAdd (VectorND< T, size > *destination, T scalar, Size number) |
|
template<typename T > |
void | multiplyAdd (T *destination, const T *b, Size number) |
| Multiply each entry in the destination by another array, then add the result to the destination entry. More...
|
|
template<> |
void | multiplyAdd (Int32 *destination, const Int32 *b, Size number) |
|
template<> |
void | multiplyAdd (Int64 *destination, const Int64 *b, Size number) |
|
template<> |
void | multiplyAdd (Float32 *destination, const Float32 *b, Size number) |
|
template<> |
void | multiplyAdd (Float64 *destination, const Float64 *b, Size number) |
|
template<typename T , Size size> |
void | multiplyAdd (VectorND< T, size > *destination, const VectorND< T, size > *b, Size number) |
|
template<typename T > |
void | multiplyAdd (T *destination, const T *a, const T *b, Size number) |
| Multiply the enties of two arrays and add the results to the destination array entries. More...
|
|
template<> |
void | multiplyAdd (Int32 *destination, const Int32 *a, const Int32 *b, Size number) |
|
template<> |
void | multiplyAdd (Int64 *destination, const Int64 *a, const Int64 *b, Size number) |
|
template<> |
void | multiplyAdd (Float32 *destination, const Float32 *a, const Float32 *b, Size number) |
|
template<> |
void | multiplyAdd (Float64 *destination, const Float64 *a, const Float64 *b, Size number) |
|
template<> |
void | multiplyAdd (Complex< Float32 > *destination, const Complex< Float32 > *a, const Complex< Float32 > *b, Size number) |
|
template<typename T , Size size> |
void | multiplyAdd (VectorND< T, size > *destination, const VectorND< T, size > *a, const VectorND< T, size > *b, Size number) |
|
template<typename T > |
void | multiplyAdd (T *destination, const T *a, const T &scalar, Size number) |
| Multiply the entries of an array by a scalar, then add the result to a destination array. More...
|
|
template<> |
void | multiplyAdd (Int32 *destination, const Int32 *a, const Int32 &scalar, Size number) |
|
template<> |
void | multiplyAdd (Int64 *destination, const Int64 *a, const Int64 &scalar, Size number) |
|
template<> |
void | multiplyAdd (Float32 *destination, const Float32 *a, const Float32 &scalar, Size number) |
|
template<> |
void | multiplyAdd (Float64 *destination, const Float64 *a, const Float64 &scalar, Size number) |
|
template<typename T , Size size> |
void | multiplyAdd (VectorND< T, size > *destination, const VectorND< T, size > *a, T scalar, Size number) |
|
template<typename T > |
void | multiplySubtract (T *destination, const T &scalar, Size number) |
| Multiply each entry in the destination by a scalar, then subtract the result from the destination array entry. More...
|
|
template<> |
void | multiplySubtract (Int32 *destination, const Int32 &scalar, Size number) |
|
template<> |
void | multiplySubtract (Int64 *destination, const Int64 &scalar, Size number) |
|
template<> |
void | multiplySubtract (Float32 *destination, const Float32 &scalar, Size number) |
|
template<> |
void | multiplySubtract (Float64 *destination, const Float64 &scalar, Size number) |
|
template<typename T , Size size> |
void | multiplySubtract (VectorND< T, size > *destination, T scalar, Size number) |
|
template<typename T > |
void | multiplySubtract (T *destination, const T *b, Size number) |
| Multiply each entry in the destination by another array, then subtract the result from the destination entry. More...
|
|
template<> |
void | multiplySubtract (Int32 *destination, const Int32 *b, Size number) |
|
template<> |
void | multiplySubtract (Int64 *destination, const Int64 *b, Size number) |
|
template<> |
void | multiplySubtract (Float32 *destination, const Float32 *b, Size number) |
|
template<> |
void | multiplySubtract (Float64 *destination, const Float64 *b, Size number) |
|
template<typename T , Size size> |
void | multiplySubtract (VectorND< T, size > *destination, const VectorND< T, size > *b, Size number) |
|
template<typename T > |
void | multiplySubtract (T *destination, const T *a, const T *b, Size number) |
| Multiply the enties of two arrays and subtract the results from the destination array entries. More...
|
|
template<> |
void | multiplySubtract (Int32 *destination, const Int32 *a, const Int32 *b, Size number) |
|
template<> |
void | multiplySubtract (Int64 *destination, const Int64 *a, const Int64 *b, Size number) |
|
template<> |
void | multiplySubtract (Float32 *destination, const Float32 *a, const Float32 *b, Size number) |
|
template<> |
void | multiplySubtract (Float64 *destination, const Float64 *a, const Float64 *b, Size number) |
|
template<typename T , Size size> |
void | multiplySubtract (VectorND< T, size > *destination, const VectorND< T, size > *a, const VectorND< T, size > *b, Size number) |
|
template<typename T > |
void | multiplySubtract (T *destination, const T *a, const T &scalar, Size number) |
| Multiply the entries of an array by a scalar, then subtract the result from a destination array. More...
|
|
template<> |
void | multiplySubtract (Int32 *destination, const Int32 *a, const Int32 &scalar, Size number) |
|
template<> |
void | multiplySubtract (Int64 *destination, const Int64 *a, const Int64 &scalar, Size number) |
|
template<> |
void | multiplySubtract (Float32 *destination, const Float32 *a, const Float32 &scalar, Size number) |
|
template<> |
void | multiplySubtract (Float64 *destination, const Float64 *a, const Float64 &scalar, Size number) |
|
template<typename T , Size size> |
void | multiplySubtract (VectorND< T, size > *destination, const VectorND< T, size > *a, T scalar, Size number) |
|
template<typename T > |
void | divide (T *destination, const T &scalar, Size number) |
| Divide each entry in the destination array by a scalar and store the result in the destination. More...
|
|
template<> |
void | divide (Int32 *destination, const Int32 &scalar, Size number) |
|
template<> |
void | divide (Int64 *destination, const Int64 &scalar, Size number) |
|
template<> |
void | divide (Float32 *destination, const Float32 &scalar, Size number) |
|
template<> |
void | divide (Float64 *destination, const Float64 &scalar, Size number) |
|
template<typename T , Size size> |
void | divide (VectorND< T, size > *destination, T scalar, Size number) |
|
template<typename T > |
void | divide (T *destination, const T *b, Size number) |
| Divide each entry in the destination array by another array entry and store the result in the destination. More...
|
|
template<> |
void | divide (Int32 *destination, const Int32 *b, Size number) |
|
template<> |
void | divide (Int64 *destination, const Int64 *b, Size number) |
|
template<> |
void | divide (Float32 *destination, const Float32 *b, Size number) |
|
template<> |
void | divide (Float64 *destination, const Float64 *b, Size number) |
|
template<typename T , Size size> |
void | divide (VectorND< T, size > *destination, const VectorND< T, size > *b, Size number) |
|
template<typename T > |
void | divide (T *destination, const T *a, const T *b, Size number) |
| Divide the elements of one array by those in another and store the result in the destination. More...
|
|
template<> |
void | divide (Int32 *destination, const Int32 *a, const Int32 *b, Size number) |
|
template<> |
void | divide (Int64 *destination, const Int64 *a, const Int64 *b, Size number) |
|
template<> |
void | divide (Float32 *destination, const Float32 *a, const Float32 *b, Size number) |
|
template<> |
void | divide (Float64 *destination, const Float64 *a, const Float64 *b, Size number) |
|
template<typename T , Size size> |
void | divide (VectorND< T, size > *destination, const VectorND< T, size > *a, const VectorND< T, size > *b, Size number) |
|
template<typename T > |
void | divide (T *destination, const T *a, const T &scalar, Size number) |
| Divide the elements in an array by a scalar and store the result in the destination array. More...
|
|
template<> |
void | divide (Int32 *destination, const Int32 *a, const Int32 &scalar, Size number) |
|
template<> |
void | divide (Int64 *destination, const Int64 *a, const Int64 &scalar, Size number) |
|
template<> |
void | divide (Float32 *destination, const Float32 *a, const Float32 &scalar, Size number) |
|
template<> |
void | divide (Float64 *destination, const Float64 *a, const Float64 &scalar, Size number) |
|
template<typename T , Size size> |
void | divide (VectorND< T, size > *destination, const VectorND< T, size > *a, T scalar, Size number) |
|
template<typename T > |
void | divideAdd (T *destination, const T &scalar, Size number) |
| Divide each entry in the destination by a scalar, then add the result to the destination array entry. More...
|
|
template<> |
void | divideAdd (Int32 *destination, const Int32 &scalar, Size number) |
|
template<> |
void | divideAdd (Int64 *destination, const Int64 &scalar, Size number) |
|
template<> |
void | divideAdd (Float32 *destination, const Float32 &scalar, Size number) |
|
template<> |
void | divideAdd (Float64 *destination, const Float64 &scalar, Size number) |
|
template<typename T , Size size> |
void | divideAdd (VectorND< T, size > *destination, T scalar, Size number) |
|
template<typename T > |
void | divideAdd (T *destination, const T *b, Size number) |
| Divide each entry in the destination by another array, then add the result to the destination entry. More...
|
|
template<> |
void | divideAdd (Int32 *destination, const Int32 *b, Size number) |
|
template<> |
void | divideAdd (Int64 *destination, const Int64 *b, Size number) |
|
template<> |
void | divideAdd (Float32 *destination, const Float32 *b, Size number) |
|
template<> |
void | divideAdd (Float64 *destination, const Float64 *b, Size number) |
|
template<typename T , Size size> |
void | divideAdd (VectorND< T, size > *destination, const VectorND< T, size > *b, Size number) |
|
template<typename T > |
void | divideAdd (T *destination, const T *a, const T *b, Size number) |
| Divide the enties of one array by another and add the results to the destination array entries. More...
|
|
template<> |
void | divideAdd (Int32 *destination, const Int32 *a, const Int32 *b, Size number) |
|
template<> |
void | divideAdd (Int64 *destination, const Int64 *a, const Int64 *b, Size number) |
|
template<> |
void | divideAdd (Float32 *destination, const Float32 *a, const Float32 *b, Size number) |
|
template<> |
void | divideAdd (Float64 *destination, const Float64 *a, const Float64 *b, Size number) |
|
template<typename T , Size size> |
void | divideAdd (VectorND< T, size > *destination, const VectorND< T, size > *a, const VectorND< T, size > *b, Size number) |
|
template<typename T > |
void | divideAdd (T *destination, const T *a, const T &scalar, Size number) |
| Divide the entries of an array by a scalar, then add the result to a destination array. More...
|
|
template<> |
void | divideAdd (Int32 *destination, const Int32 *a, const Int32 &scalar, Size number) |
|
template<> |
void | divideAdd (Int64 *destination, const Int64 *a, const Int64 &scalar, Size number) |
|
template<> |
void | divideAdd (Float32 *destination, const Float32 *a, const Float32 &scalar, Size number) |
|
template<> |
void | divideAdd (Float64 *destination, const Float64 *a, const Float64 &scalar, Size number) |
|
template<typename T , Size size> |
void | divideAdd (VectorND< T, size > *destination, const VectorND< T, size > *a, T scalar, Size number) |
|
template<typename T > |
void | divideSubtract (T *destination, const T &scalar, Size number) |
| Divide each entry in the destination by a scalar, then subtract the result from the destination array entry. More...
|
|
template<> |
void | divideSubtract (Int32 *destination, const Int32 &scalar, Size number) |
|
template<> |
void | divideSubtract (Int64 *destination, const Int64 &scalar, Size number) |
|
template<> |
void | divideSubtract (Float32 *destination, const Float32 &scalar, Size number) |
|
template<> |
void | divideSubtract (Float64 *destination, const Float64 &scalar, Size number) |
|
template<typename T , Size size> |
void | divideSubtract (VectorND< T, size > *destination, T scalar, Size number) |
|
template<typename T > |
void | divideSubtract (T *destination, const T *b, Size number) |
| Divide each entry in the destination by another array, then subtract the result from the destination entry. More...
|
|
template<> |
void | divideSubtract (Int32 *destination, const Int32 *b, Size number) |
|
template<> |
void | divideSubtract (Int64 *destination, const Int64 *b, Size number) |
|
template<> |
void | divideSubtract (Float32 *destination, const Float32 *b, Size number) |
|
template<> |
void | divideSubtract (Float64 *destination, const Float64 *b, Size number) |
|
template<typename T , Size size> |
void | divideSubtract (VectorND< T, size > *destination, const VectorND< T, size > *b, Size number) |
|
template<typename T > |
void | divideSubtract (T *destination, const T *a, const T *b, Size number) |
| Divide the enties of one array by another and subtract the results from the destination array entries. More...
|
|
template<> |
void | divideSubtract (Int32 *destination, const Int32 *a, const Int32 *b, Size number) |
|
template<> |
void | divideSubtract (Int64 *destination, const Int64 *a, const Int64 *b, Size number) |
|
template<> |
void | divideSubtract (Float32 *destination, const Float32 *a, const Float32 *b, Size number) |
|
template<> |
void | divideSubtract (Float64 *destination, const Float64 *a, const Float64 *b, Size number) |
|
template<typename T , Size size> |
void | divideSubtract (VectorND< T, size > *destination, const VectorND< T, size > *a, const VectorND< T, size > *b, Size number) |
|
template<typename T > |
void | divideSubtract (T *destination, const T *a, const T &scalar, Size number) |
| Divide the entries of an array by a scalar, then subtract the result from a destination array. More...
|
|
template<> |
void | divideSubtract (Int32 *destination, const Int32 *a, const Int32 &scalar, Size number) |
|
template<> |
void | divideSubtract (Int64 *destination, const Int64 *a, const Int64 &scalar, Size number) |
|
template<> |
void | divideSubtract (Float32 *destination, const Float32 *a, const Float32 &scalar, Size number) |
|
template<> |
void | divideSubtract (Float64 *destination, const Float64 *a, const Float64 &scalar, Size number) |
|
template<typename T , Size size> |
void | divideSubtract (VectorND< T, size > *destination, const VectorND< T, size > *a, T scalar, Size number) |
|
template<typename T > |
void | abs (T *destination, Size number) |
| Compute the absolute value of each entry in an array and store the result in the same array. More...
|
|
template<> |
void | abs (Int32 *destination, Size number) |
|
template<> |
void | abs (Float32 *destination, Size number) |
|
template<> |
void | abs (Float64 *destination, Size number) |
|
template<typename T > |
void | abs (T *destination, const T *a, Size number) |
| Compute the absolute value of each entry in an array and store the result in the destination array. More...
|
|
template<> |
void | abs (Int32 *destination, const Int32 *a, Size number) |
|
template<> |
void | abs (Float32 *destination, const Float32 *a, Size number) |
|
template<> |
void | abs (Float64 *destination, const Float64 *a, Size number) |
|
template<typename T > |
void | sqrt (T *destination, Size number) |
| Compute the square root of each entry in an array and store the result in the same array. More...
|
|
template<> |
void | sqrt (Int32 *destination, Size number) |
|
template<> |
void | sqrt (Float32 *destination, Size number) |
|
template<> |
void | sqrt (Float64 *destination, Size number) |
|
template<typename T > |
void | sqrt (T *destination, const T *a, Size number) |
| Compute the square root of each entry in an array and store the result in the destination array. More...
|
|
template<> |
void | sqrt (Int32 *destination, const Int32 *a, Size number) |
|
template<> |
void | sqrt (Float32 *destination, const Float32 *a, Size number) |
|
template<> |
void | sqrt (Float64 *destination, const Float64 *a, Size number) |
|
template<typename T > |
void | floor (T *destination, Size number) |
| Compute the floor of each entry in an array and store the result in the same array. More...
|
|
template<> |
void | floor (Float32 *destination, Size number) |
|
template<> |
void | floor (Float64 *destination, Size number) |
|
template<typename T > |
void | floor (T *destination, const T *a, Size number) |
| Compute the floor of each entry in an array and store the result in the destination array. More...
|
|
template<> |
void | floor (Float32 *destination, const Float32 *a, Size number) |
|
template<> |
void | floor (Float64 *destination, const Float64 *a, Size number) |
|
template<typename T > |
void | ceiling (T *destination, Size number) |
| Compute the ceiling of each entry in an array and store the result in the same array. More...
|
|
template<> |
void | ceiling (Float32 *destination, Size number) |
|
template<> |
void | ceiling (Float64 *destination, Size number) |
|
template<typename T > |
void | ceiling (T *destination, const T *a, Size number) |
| Compute the ceiling of each entry in an array and store the result in the destination array. More...
|
|
template<> |
void | ceiling (Float32 *destination, const Float32 *a, Size number) |
|
template<> |
void | ceiling (Float64 *destination, const Float64 *a, Size number) |
|
template<typename T > |
void | min (T *destination, const T *a, const T *b, Size number) |
| Find the smaller of each pair of entries in two arrays and store the result in the destination. More...
|
|
template<typename T > |
T | min (const T *array, Size number) |
| Compute and return the minimum value in the specified array. More...
|
|
template<typename T > |
void | max (T *destination, const T *a, const T *b, Size number) |
| Find the larger of each pair of entries in two arrays and store the result in the destination. More...
|
|
template<typename T > |
T | max (const T *array, Size number) |
| Compute and return the maximum value in the specified array. More...
|
|
template<typename T > |
Bool | operator== (T value, const Complex< T > &complex) |
| Return whether or not a r number is equal to a complex number. More...
|
|
template<typename T > |
Bool | operator!= (T value, const Complex< T > &complex) |
| Return whether or not a r number is not equal to a complex number. More...
|
|
template<typename T > |
Complex< T > | operator+ (T value, const Complex< T > &complex) |
| Add a complex number to a r number and return the resulting complex number. More...
|
|
template<typename T > |
Complex< T > | operator- (T value, const Complex< T > &complex) |
| Subtract a complex number from a r number and return the resulting complex number. More...
|
|
template<typename T > |
Complex< T > | operator* (T value, const Complex< T > &complex) |
| Multiply a r number by a complex number and return the resulting complex number. More...
|
|
template<typename T > |
Complex< T > | operator/ (T value, const Complex< T > &complex) |
| Divide a r number by a complex number and return the resulting complex number. More...
|
|
template<typename T > |
T | abs (const Complex< T > &complex) |
| Return the absolute value (magnitude) of the specified complex number. More...
|
|
template<typename T > |
Bool | convolve (const T *input, Size inputSize, const T *filter, Size filterSize, T *output) |
| Convolve the specified input signal with the given filter kernel. More...
|
|
void | fft (Complex< Float32 > *inOut, Size size) |
| Convert N complex values to N complex values in-place using the forward transform. More...
|
|
void | ifft (Complex< Float32 > *inOut, Size size) |
| Convert N complex values to N complex values using the reverse transform. More...
|
|
void | fft (Float32 *inOut, Size size) |
| Convert N real float values to N/2+1 complex values in place. More...
|
|
void | fft (const Float32 *input, Complex< Float32 > *output, Size size) |
| Convert N real float values to N/2+1 complex values. More...
|
|
void | ifft (Float32 *inOut, Size size) |
| Convert N/2+1 complex values to N real float values in place. More...
|
|
void | ifft (const Complex< Float32 > *input, Float32 *output, Size size) |
| Convert N/2+1 complex values to N real float values. More...
|
|
void | fftShift (Complex< Float32 > *data, Size size) |
| Shift the zero-frequency components of the specified array to the center of the array. More...
|
|
template<typename T > |
Bool | fft2D (Complex< T > *data, Size width, Size height) |
| Compute the forward 2D Fourier transform in-place on the specified array of complex numbers. More...
|
|
template<typename T > |
Bool | ifft2D (Complex< T > *data, Size width, Size height) |
| Compute the inverse 2D Fourier transform in-place on the specified array of complex numbers. More...
|
|
template<typename T > |
Bool | fftShift2D (Complex< T > *data, Size width, Size height) |
| Shift the zero-frequency components of the specified 2D matrix to the center of the matrix. More...
|
|
template<typename T , typename BaseType , Size fractionalBits> |
Bool | operator== (T a, const Fixed< BaseType, fractionalBits > &b) |
|
template<typename T , typename BaseType , Size fractionalBits> |
Bool | operator!= (T a, const Fixed< BaseType, fractionalBits > &b) |
|
template<typename T , typename BaseType , Size fractionalBits> |
Bool | operator<= (T a, const Fixed< BaseType, fractionalBits > &b) |
|
template<typename T , typename BaseType , Size fractionalBits> |
Bool | operator>= (T a, const Fixed< BaseType, fractionalBits > &b) |
|
template<typename T , typename BaseType , Size fractionalBits> |
Bool | operator< (T a, const Fixed< BaseType, fractionalBits > &b) |
|
template<typename T , typename BaseType , Size fractionalBits> |
Bool | operator> (T a, const Fixed< BaseType, fractionalBits > &b) |
|
template<typename T , typename BaseType , Size fractionalBits> |
Fixed< BaseType, fractionalBits > | operator+ (T a, const Fixed< BaseType, fractionalBits > &b) |
|
template<typename T , typename BaseType , Size fractionalBits> |
Fixed< BaseType, fractionalBits > | operator- (T a, const Fixed< BaseType, fractionalBits > &b) |
|
template<typename T , typename BaseType , Size fractionalBits> |
Fixed< BaseType, fractionalBits > | operator* (T a, const Fixed< BaseType, fractionalBits > &b) |
|
template<typename T , typename BaseType , Size fractionalBits> |
Fixed< BaseType, fractionalBits > | operator/ (T a, const Fixed< BaseType, fractionalBits > &b) |
|
template<typename T , typename BaseType , Size fractionalBits> |
T & | operator+= (T &a, const Fixed< BaseType, fractionalBits > &b) |
|
template<typename T , typename BaseType , Size fractionalBits> |
T & | operator-= (T &a, const Fixed< BaseType, fractionalBits > &b) |
|
template<typename T , typename BaseType , Size fractionalBits> |
T & | operator*= (T &a, const Fixed< BaseType, fractionalBits > &b) |
|
template<typename T , typename BaseType , Size fractionalBits> |
T & | operator/= (T &a, const Fixed< BaseType, fractionalBits > &b) |
|
template<typename T > |
Matrix< T > | operator+ (const T &c, const Matrix< T > &matrix) |
| Add a scalar to a matrix's elements and return the resulting matrix. More...
|
|
template<typename T > |
Matrix< T > | operator- (const T &c, const Matrix< T > &matrix) |
| Subtract a matrix's elements from a scalar and return the resulting matrix. More...
|
|
template<typename T > |
Matrix< T > | operator* (const T &c, const Matrix< T > &matrix) |
| Multiply a matrix's elements by a scalar and return the resulting matrix. More...
|
|
template<typename T > |
Bool | leastSquares (const Matrix< T > &A, const Matrix< T > &b, Matrix< T > &x) |
| Use a least-squares algorithm to find the best fitting solution for a linear system A*x = b. More...
|
|
template<typename T > |
Bool | solve (const Matrix< T > &A, const Matrix< T > &b, Matrix< T > &x) |
| Solve a linear system of the form A*x = b., returning whether or not it was able to be solved. More...
|
|
template<typename T > |
void | qr (const Matrix< T > &A, Matrix< T > &Q, Matrix< T > &R) |
| Factorize a matrix A into the product A = Q*R, where Q is orthornormal and R is upper-triangular. More...
|
|
template<typename T > |
void | qr (const Matrix< T > &A, Matrix< T > &Q, Matrix< T > &R, Matrix< Index > &permutation) |
| Factorize a matrix A into the product A = Q*R, where Q is orthornormal and R is upper-triangular. More...
|
|
template<typename T > |
void | lu (const Matrix< T > &matrix, Matrix< T > &L, Matrix< T > &U) |
|
template<typename T > |
VectorND< T, 2 > | operator* (const VectorND< T, 2 > &vector, const MatrixND< T, 2, 2 > &matrix) |
| 'Reverse' multiply a vector/point by matrix: multiply it by the matrix's transpose. More...
|
|
template<typename T > |
MatrixND< T, 2, 2 > | operator* (const T &value, const MatrixND< T, 2, 2 > &matrix) |
| Multiply a matrix's elements by a scalar and return the resulting matrix. More...
|
|
template<typename T > |
MatrixND< T, 2, 2 > | operator+ (const T &value, const MatrixND< T, 2, 2 > &matrix) |
| Add a scalar to the elements of a matrix and return the resulting matrix. More...
|
|
template<typename T > |
MatrixND< T, 2, 2 > | abs (const MatrixND< T, 2, 2 > &matrix) |
| Return the absolute value of the specified matrix, such that the every component is positive. More...
|
|
template<typename T > |
MatrixND< T, 3, 3 > | operator+ (const T &value, const MatrixND< T, 3, 3 > &matrix) |
| Add a sclar value to a matrix's elements and return the resulting matrix. More...
|
|
template<typename T > |
VectorND< T, 3 > | operator* (const VectorND< T, 3 > &vector, const MatrixND< T, 3, 3 > &matrix) |
| 'Reverse' multiply a vector/point by matrix: multiply it by the matrix's transpose. More...
|
|
template<typename T > |
MatrixND< T, 3, 3 > | operator* (const T &value, const MatrixND< T, 3, 3 > &matrix) |
| Multiply a matrix's elements by a scalar and return the resulting matrix. More...
|
|
template<typename T > |
MatrixND< T, 3, 3 > | abs (const MatrixND< T, 3, 3 > &matrix) |
| Return the absolute value of the specified matrix, such that the every component is positive. More...
|
|
template<typename T > |
VectorND< T, 3 > | eulerXYZ (const MatrixND< T, 3, 3 > &m) |
| Return the euler angles for an orthonormal rotation matrix when the euler angles are composed in XYZ order. More...
|
|
template<typename T > |
VectorND< T, 3 > | eulerXZY (const MatrixND< T, 3, 3 > &m) |
| Return the euler angles for an orthonormal rotation matrix when the euler angles are composed in XZY order. More...
|
|
template<typename T > |
VectorND< T, 3 > | eulerYXZ (const MatrixND< T, 3, 3 > &m) |
| Return the euler angles for an orthonormal rotation matrix when the euler angles are composed in YXZ order. More...
|
|
template<typename T > |
VectorND< T, 3 > | eulerYZX (const MatrixND< T, 3, 3 > &m) |
| Return the euler angles for an orthonormal rotation matrix when the euler angles are composed in YZX order. More...
|
|
template<typename T > |
VectorND< T, 3 > | eulerZXY (const MatrixND< T, 3, 3 > &m) |
| Return the euler angles for an orthonormal rotation matrix when the euler angles are composed in ZXY order. More...
|
|
template<typename T > |
VectorND< T, 3 > | eulerZYX (const MatrixND< T, 3, 3 > &m) |
| Return the euler angles for an orthonormal rotation matrix when the euler angles are composed in ZYX order. More...
|
|
template<class T > |
MatrixND< T, 4, 4 > | operator+ (const T &value, const MatrixND< T, 4, 4 > &matrix) |
| Add a sclar value to a matrix's elements and return the resulting matrix. More...
|
|
template<typename T > |
VectorND< T, 4 > | operator* (const VectorND< T, 4 > &vector, const MatrixND< T, 4, 4 > &matrix) |
| 'Reverse' multiply a vector/point by matrix: multiply it by the matrix's transpose. More...
|
|
template<class T > |
MatrixND< T, 4, 4 > | operator* (const T &value, const MatrixND< T, 4, 4 > &matrix) |
| Multiply a matrix's elements by a scalar and return the resulting matrix. More...
|
|
template<typename T > |
MatrixND< T, 4, 4 > | abs (const MatrixND< T, 4, 4 > &matrix) |
| Return the absolute value of the specified matrix, such that the every component is positive. More...
|
|
template<typename T , Size numRows, Size numColumns> |
MatrixND< T, numRows, numColumns > | operator+ (const T &c, const MatrixND< T, numRows, numColumns > &matrix) |
| Multiply a matrix's elements by a scalar and return the resulting matrix. More...
|
|
template<typename T , Size numRows, Size numColumns> |
VectorND< T, numColumns > | operator* (const VectorND< T, numRows > &vector, const MatrixND< T, numRows, numColumns > &matrix) |
| 'Reverse' multiply a vector/point by matrix: multiply it by the matrix's transpose. More...
|
|
template<typename T , Size numRows, Size numColumns> |
MatrixND< T, numRows, numColumns > | operator* (const T &c, const MatrixND< T, numRows, numColumns > &matrix) |
| Multiply a matrix's elements by a scalar and return the resulting matrix. More...
|
|
template<typename T > |
T | nextPowerOf2Prime (T value) |
| Return a prime number larger than the specified value, but smaller than the next power of two. More...
|
|
template<> |
unsigned int | nextPowerOf2Prime (unsigned int value) |
|
template<> |
unsigned long | nextPowerOf2Prime (unsigned long value) |
|
template<> |
unsigned long long | nextPowerOf2Prime (unsigned long long value) |
|
template<typename T > |
Quaternion4D< T > | operator* (const T &value, const Quaternion4D< T > &quaternion) |
| Multiply every component of the quaternion with the value, returning a quaternion result. More...
|
|
template<typename T > |
T | dot (const Quaternion4D< T > &q1, const Quaternion4D< T > &q2) |
| Compute and return the dot product of two quaternions. More...
|
|
template<typename T > |
Quaternion4D< T > | slerp (const Quaternion4D< T > &q1, const Quaternion4D< T > &q2, T a) |
| Use spherical linear interpolation to interpolate two quaternions. More...
|
|
template<typename T > |
T | random () |
|
template<typename T > |
T | random (T min, T max) |
|
template<typename T > |
void | setRandomSeed (T newSeed) |
|
template<typename T , typename U > |
Bool | resample (const T *input, Size inputSize, T *output, U factor, Size filterWidth, U filterFactor=U(0.499)) |
| Resample the input data by the given factor and put the result in the output. More...
|
|
template<typename T > |
T | pi () |
|
template<typename T > |
T | e () |
|
template<typename T > |
T | nan () |
| Return the Not-A-Number representation for the templated type, or zero if it has none. More...
|
|
template<typename T > |
T | infinity () |
| Return the Infinity representation for the templated type, or the maximum value if it has none. More...
|
|
template<typename T > |
T | negativeInfinity () |
| Return the Negative Infinity representation for the templated type, or the minimum value if it has none. More...
|
|
template<> |
unsigned char | negativeInfinity< unsigned char > () |
| Return the Negative Infinity representation for the templated type, or the minimum value if it has none. More...
|
|
template<> |
unsigned short | negativeInfinity< unsigned short > () |
| Return the Negative Infinity representation for the templated type, or the minimum value if it has none. More...
|
|
template<> |
unsigned int | negativeInfinity< unsigned int > () |
| Return the Negative Infinity representation for the templated type, or the minimum value if it has none. More...
|
|
template<> |
unsigned long | negativeInfinity< unsigned long > () |
| Return the Negative Infinity representation for the templated type, or the minimum value if it has none. More...
|
|
template<> |
unsigned long long | negativeInfinity< unsigned long long > () |
| Return the Negative Infinity representation for the templated type, or the minimum value if it has none. More...
|
|
template<typename T > |
T | max () |
| Return the maximum allowable finite value for the template parameter type. More...
|
|
template<typename T > |
T | min () |
| Return the minimum allowable finite value for the template parameter type. More...
|
|
template<> |
float | min< float > () |
| Return the minimum allowable finite value for the template parameter type. More...
|
|
template<> |
double | min< double > () |
| Return the minimum allowable finite value for the template parameter type. More...
|
|
template<typename T > |
T | minPositive () |
| Return the smallest normalized positive value for the template parameter type. More...
|
|
template<typename T > |
T | epsilon () |
| Return the smallest deviation from the value 1 that the templated type can represent. More...
|
|
template<> |
float | epsilon () |
| Return the smallest deviation from the value 1 that a float can represent. More...
|
|
template<> |
double | epsilon () |
| Return the smallest deviation from the value 1 that a double can represent. More...
|
|
template<typename T > |
bool | isInfinity (T number) |
| Return whether a number is equal to the representation of Infinity for its type. More...
|
|
template<typename T > |
bool | isNegativeInfinity (T number) |
| Return whether a number is equal to the representation of Negative Infinity for its type. More...
|
|
template<> |
bool | isNegativeInfinity (unsigned char number) |
|
template<> |
bool | isNegativeInfinity (unsigned short number) |
|
template<> |
bool | isNegativeInfinity (unsigned int number) |
|
template<> |
bool | isNegativeInfinity (unsigned long number) |
|
template<> |
bool | isNegativeInfinity (unsigned long long number) |
|
template<typename T > |
bool | isInfinite (T number) |
| Return whether a number is equal to Negative or Positive Infinity for its type. More...
|
|
template<typename T > |
bool | isFinite (T number) |
| Return whether a number is finite. More...
|
|
template<typename T > |
bool | isNAN (T number) |
| Return whether or not the specified number is Not-A-Number. More...
|
|
template<> |
bool | isNAN (float number) |
|
template<> |
bool | isNAN (double number) |
|
template<typename T > |
bool | isInteger () |
|
template<> |
bool | isInteger< char > () |
|
template<> |
bool | isInteger< unsigned char > () |
|
template<> |
bool | isInteger< short > () |
|
template<> |
bool | isInteger< unsigned short > () |
|
template<> |
bool | isInteger< int > () |
|
template<> |
bool | isInteger< unsigned int > () |
|
template<> |
bool | isInteger< long > () |
|
template<> |
bool | isInteger< unsigned long > () |
|
template<> |
bool | isInteger< long long > () |
|
template<> |
bool | isInteger< unsigned long long > () |
|
template<typename T > |
bool | isInteger (T number) |
|
template<typename T > |
bool | isFloatingPoint () |
|
template<> |
bool | isFloatingPoint< float > () |
|
template<> |
bool | isFloatingPoint< double > () |
|
template<typename T > |
bool | isFloatingPoint (T number) |
|
template<typename T > |
T | abs (T number) |
| Return the absolute value of the specified number, such that the result is positive. More...
|
|
template<> |
float | abs (float number) |
|
template<> |
double | abs (double number) |
|
template<> |
unsigned char | abs (unsigned char value) |
|
template<> |
unsigned short | abs (unsigned short value) |
|
template<> |
unsigned int | abs (unsigned int value) |
|
template<> |
unsigned long | abs (unsigned long value) |
|
template<> |
unsigned long long | abs (unsigned long long value) |
|
template<typename T > |
T | sign (T number) |
| Return -1 if the number is less than zero, 0 if it is zero, and 1 otherwise. More...
|
|
template<> |
unsigned char | sign (unsigned char value) |
|
template<> |
unsigned short | sign (unsigned short value) |
|
template<> |
unsigned int | sign (unsigned int value) |
|
template<> |
unsigned long | sign (unsigned long value) |
|
template<> |
unsigned long long | sign (unsigned long long value) |
|
template<typename T > |
bool | equals (T value1, T value2) |
|
template<> |
bool | equals (float value1, float value2) |
|
template<> |
bool | equals (double value1, double value2) |
|
template<typename T > |
bool | fuzzyEquals (T value1, T value2, T epsilon) |
|
template<typename T > |
bool | isZero (T value, T epsilon) |
|
template<typename T > |
bool | isZero (T value) |
|
template<> |
bool | isZero (float value) |
|
template<> |
bool | isZero (double value) |
|
template<typename T > |
T | average (T value1, T value2) |
|
template<> |
float | average (float value1, float value2) |
|
template<> |
double | average (double value1, double value2) |
|
template<typename T > |
T | max (T value1, T value2) |
| Return the larger of two numbers. More...
|
|
template<typename T > |
T | min (T value1, T value2) |
| Return the smaller of two numbers. More...
|
|
template<typename T > |
T | clamp (T number, T minimum, T maximum) |
| Return the result when the a number is constrainted to the interval [minimum, maximum]. More...
|
|
template<typename T > |
T | floor (T number) |
| Return the largest whole number smaller than the number parameter, as the same type. More...
|
|
template<> |
float | floor (float number) |
|
template<> |
double | floor (double number) |
|
template<typename T > |
T | ceiling (T number) |
|
template<> |
float | ceiling (float number) |
|
template<> |
double | ceiling (double number) |
|
template<typename T > |
T | round (T value) |
|
template<> |
float | round (float value) |
|
template<> |
double | round (double value) |
|
template<typename T > |
T | sqrti (T value) |
|
template<typename T > |
T | sqrt (T value) |
|
template<> |
float | sqrt (float value) |
|
template<> |
double | sqrt (double value) |
|
template<typename T > |
T | previousMultiple (T number, T base) |
| Get the previous multiple of a base that is less than or equal to a specified number. More...
|
|
template<typename T > |
T | nextMultiple (T number, T base) |
| Get the next multiple of a base that is greater than or equal to a specified number. More...
|
|
template<typename T > |
T | nearestMultiple (T number, T base) |
| Get the multiple of a base that the closest to a specified number. More...
|
|
template<typename T > |
T | nextPowerOfTwo (T x) |
| Return the first power of two larger than the specified number. More...
|
|
template<> |
char | nextPowerOfTwo (char x) |
| Return the first power of two larger than the specified number. More...
|
|
template<> |
unsigned char | nextPowerOfTwo (unsigned char x) |
| Return the first power of two larger than the specified number. More...
|
|
template<> |
short | nextPowerOfTwo (short x) |
| Return the first power of two larger than the specified number. More...
|
|
template<> |
unsigned short | nextPowerOfTwo (unsigned short x) |
| Return the first power of two larger than the specified number. More...
|
|
template<> |
int | nextPowerOfTwo (int x) |
| Return the first power of two larger than the specified number. More...
|
|
template<> |
unsigned int | nextPowerOfTwo (unsigned int x) |
| Return the first power of two larger than the specified number. More...
|
|
template<> |
long | nextPowerOfTwo (long x) |
| Return the first power of two larger than the specified number. More...
|
|
template<> |
unsigned long | nextPowerOfTwo (unsigned long x) |
| Return the first power of two larger than the specified number. More...
|
|
template<> |
long long | nextPowerOfTwo (long long x) |
| Return the first power of two larger than the specified number. More...
|
|
template<> |
unsigned long long | nextPowerOfTwo (unsigned long long x) |
| Return the first power of two larger than the specified number. More...
|
|
template<typename T > |
Bool | isPowerOfTwo (T number) |
| Return whether or not the specified number is a power of 2. More...
|
|
template<typename T , typename U > |
T | pow (T base, U power) |
|
template<> |
char | pow (char base, char power) |
|
template<> |
unsigned char | pow (unsigned char base, unsigned char power) |
|
template<> |
short | pow (short base, short power) |
|
template<> |
unsigned short | pow (unsigned short base, unsigned short power) |
|
template<> |
int | pow (int base, int power) |
|
template<> |
unsigned int | pow (unsigned int base, unsigned int power) |
|
template<> |
long | pow (long base, long power) |
|
template<> |
unsigned long | pow (unsigned long base, unsigned long power) |
|
template<> |
long long | pow (long long base, long long power) |
|
template<> |
unsigned long long | pow (unsigned long long base, unsigned long long power) |
|
template<typename T > |
T | square (T value) |
|
template<typename T > |
T | ln (T value) |
|
template<typename T > |
T | log10 (T value) |
|
template<> |
short | log10 (short value) |
|
template<> |
unsigned short | log10 (unsigned short value) |
|
template<> |
int | log10 (int value) |
|
template<> |
unsigned int | log10 (unsigned int value) |
|
template<> |
long | log10 (long value) |
|
template<> |
unsigned long | log10 (unsigned long value) |
|
template<> |
long long | log10 (long long value) |
|
template<> |
unsigned long long | log10 (unsigned long long value) |
|
template<typename T > |
T | log (T value, T base) |
|
template<> |
float | log (float value, float base) |
|
template<typename T > |
T | log2 (T value) |
|
template<> |
float | log2 (float value) |
|
template<> |
double | log2 (double value) |
|
template<typename T > |
T | bitCount (T bits) |
|
template<> |
UInt32 | bitCount (UInt32 bits) |
|
template<> |
UInt64 | bitCount (UInt64 bits) |
|
template<typename T > |
T | firstSetBit (T bits) |
|
template<> |
UInt32 | firstSetBit (UInt32 bits) |
|
template<> |
UInt64 | firstSetBit (UInt64 bits) |
|
template<typename T > |
T | lastSetBit (T bits) |
|
template<> |
UInt32 | lastSetBit (UInt32 bits) |
|
template<> |
UInt64 | lastSetBit (UInt64 bits) |
|
template<typename T > |
T | mod (T value, T divisor) |
| Compute the remainder when the specified value is divided by the given divisor. More...
|
|
template<> |
float | mod (float value, float divisor) |
| Compute the remainder when the specified value is divided by the given divisor. More...
|
|
template<> |
double | mod (double value, double divisor) |
| Compute the remainder when the specified value is divided by the given divisor. More...
|
|
float | radiansToDegrees (float number) |
|
double | radiansToDegrees (double number) |
|
float | degreesToRadians (float number) |
|
double | degreesToRadians (double number) |
|
template<typename T > |
T | linearToDB (T linear) |
| Convert the specfied linear ratio to a logarithmic ratio in decibels. More...
|
|
template<typename T > |
T | dbToLinear (T db) |
| Convert the specfied logarithmic ratio in decibels to a linear ratio. More...
|
|
template<typename T > |
T | sec (T value) |
| Compute and return the secant of the specified value. More...
|
|
template<typename T > |
T | csc (T value) |
| Compute and return the cosecant of the specified value. More...
|
|
template<typename T > |
T | cot (T value) |
| Compute and return the cotangent of the specified value. More...
|
|
template<typename T > |
T | sech (T value) |
| Compute and return the secant of the specified value. More...
|
|
template<typename T > |
T | csch (T value) |
| Compute and return the cosecant of the specified value. More...
|
|
template<typename T > |
T | coth (T value) |
| Compute and return the cotangent of the specified value. More...
|
|
template<typename T > |
T | asinh (T value) |
| Compute and return the inverse hyperbolic sine of the specified value. More...
|
|
template<typename T > |
T | acosh (T value) |
| Compute and return the inverse hyperbolic cosine of the specified value. More...
|
|
template<typename T > |
T | atanh (T value) |
| Compute and return the inverse hyperbolic tangent of the specified value. More...
|
|
template<typename T > |
T | asech (T value) |
| Compute and return the inverse hyperbolic secant of the specified value. More...
|
|
template<typename T > |
T | acsch (T value) |
| Compute and return the inverse hyperbolic cosecant of the specified value. More...
|
|
template<typename T > |
T | acoth (T value) |
| Compute and return the inverse hyperbolic cotangent of the specified value. More...
|
|
template<> |
ScalarType | ScalarType::of< lang::Float16 > () |
|
template<> |
void | ScalarType::check< lang::Float16 > () |
|
template<typename T , Size width> |
SIMDArray< T, width > | operator+ (const T &value, const SIMDArray< T, width > &scalar) |
| Add a scalar value to each component of this scalar and return the resulting scalar. More...
|
|
template<typename T , Size width> |
SIMDArray< T, width > | operator- (const T &value, const SIMDArray< T, width > &scalar) |
| Subtract a scalar value from each component of this scalar and return the resulting scalar. More...
|
|
template<typename T , Size width> |
SIMDArray< T, width > | operator* (const T &value, const SIMDArray< T, width > &scalar) |
| Multiply a scalar value by each component of this scalar and return the resulting scalar. More...
|
|
template<typename T , Size width> |
SIMDArray< T, width > | operator/ (const T &value, const SIMDArray< T, width > &scalar) |
| Divide each component of this scalar by a scalar value and return the resulting scalar. More...
|
|
template<typename T , Size width> |
SIMDArray< T, width > | abs (const SIMDArray< T, width > &scalar) |
| Compute the absolute value of each component of the specified SIMD scalar and return the result. More...
|
|
template<typename T , Size width> |
SIMDArray< T, width > | sqrt (const SIMDArray< T, width > &scalar) |
| Compute the square root of each component of the specified SIMD scalar and return the result. More...
|
|
template<typename T , Size width> |
SIMDArray< T, width > | min (const SIMDArray< T, width > &scalar1, const SIMDArray< T, width > &scalar2) |
| Compute the minimum of each component of the specified SIMD scalars and return the result. More...
|
|
template<typename T , Size width> |
SIMDArray< T, width > | max (const SIMDArray< T, width > &scalar1, const SIMDArray< T, width > &scalar2) |
| Compute the maximum of each component of the specified SIMD scalars and return the result. More...
|
|
template<Size width> |
SIMDArray< Float32, width > | operator+ (const Float32 value, const SIMDArray< Float32, width > &scalar) |
| Add a scalar value to each component of this scalar and return the resulting scalar. More...
|
|
template<Size width> |
SIMDArray< Float32, width > | operator- (const Float32 value, const SIMDArray< Float32, width > &scalar) |
| Subtract a scalar value from each component of this scalar and return the resulting scalar. More...
|
|
template<Size width> |
SIMDArray< Float32, width > | operator* (const Float32 value, const SIMDArray< Float32, width > &scalar) |
| Multiply a scalar value by each component of this scalar and return the resulting scalar. More...
|
|
template<Size width> |
SIMDArray< Float32, width > | operator/ (const Float32 value, const SIMDArray< Float32, width > &scalar) |
| Divide each component of this scalar by a scalar value and return the resulting scalar. More...
|
|
template<Size width> |
SIMDArray< Float32, width > | abs (const SIMDArray< Float32, width > &scalar) |
| Compute the absolute value of each component of the specified SIMD scalar and return the result. More...
|
|
template<Size width> |
SIMDArray< Float32, width > | ceiling (const SIMDArray< Float32, width > &scalar) |
| Compute the ceiling of each component of the specified SIMD scalar and return the result. More...
|
|
template<Size width> |
SIMDArray< Float32, width > | floor (const SIMDArray< Float32, width > &scalar) |
| Compute the floor of each component of the specified SIMD scalar and return the result. More...
|
|
template<Size width> |
SIMDArray< Float32, width > | sqrt (const SIMDArray< Float32, width > &scalar) |
| Compute the square root of each component of the specified SIMD scalar and return the result. More...
|
|
template<Size width> |
SIMDArray< Float32, width > | min (const SIMDArray< Float32, width > &scalar1, const SIMDArray< Float32, width > &scalar2) |
| Compute the minimum of each component of the specified SIMD scalars and return the result. More...
|
|
template<Size width> |
SIMDArray< Float32, width > | max (const SIMDArray< Float32, width > &scalar1, const SIMDArray< Float32, width > &scalar2) |
| Compute the maximum of each component of the specified SIMD scalars and return the result. More...
|
|
template<Size width> |
SIMDArray< Float32, width > | select (const SIMDArray< Int32, width > &selector, const SIMDArray< Float32, width > &scalar1, const SIMDArray< Float32, width > &scalar2) |
| Select elements from the first SIMD scalar if the selector is TRUE, otherwise from the second. More...
|
|
template<Size width> |
SIMDArray< Float32, width > | ln (const SIMDArray< Float32, width > &scalar) |
| Compute and return the natural logarithm of the specified vector. More...
|
|
template<Size width> |
SIMDArray< Float32, width > | log10 (const SIMDArray< Float32, width > &scalar) |
| Compute and return the base-10 logarithm of the specified vector. More...
|
|
template<Size width> |
SIMDArray< Float32, width > | sin (const SIMDArray< Float32, width > &scalar) |
| Compute and return the sine of the specified vector. More...
|
|
template<Size width> |
SIMDArray< Float32, width > | cos (const SIMDArray< Float32, width > &scalar) |
| Compute and return the cosine of the specified vector. More...
|
|
template<Size width> |
SIMDArray< Int32, width > | operator+ (const Int32 value, const SIMDArray< Int32, width > &scalar) |
| Add a scalar value to each component of this scalar and return the resulting scalar. More...
|
|
template<Size width> |
SIMDArray< Int32, width > | operator- (const Int32 value, const SIMDArray< Int32, width > &scalar) |
| Subtract a scalar value from each component of this scalar and return the resulting scalar. More...
|
|
template<Size width> |
SIMDArray< Int32, width > | operator* (const Int32 value, const SIMDArray< Int32, width > &scalar) |
| Multiply a scalar value by each component of this scalar and return the resulting scalar. More...
|
|
template<Size width> |
SIMDArray< Int32, width > | operator/ (const Int32 value, const SIMDArray< Int32, width > &scalar) |
| Divide each component of this scalar by a scalar value and return the resulting scalar. More...
|
|
template<Size width> |
SIMDArray< Int32, width > | abs (const SIMDArray< Int32, width > &scalar) |
| Compute the absolute value of each component of the specified SIMD scalar and return the result. More...
|
|
template<Size width> |
SIMDArray< Int32, width > | sqrt (const SIMDArray< Int32, width > &scalar) |
| Compute the square root of each component of the specified SIMD scalar and return the result. More...
|
|
template<Size width> |
SIMDArray< Int32, width > | min (const SIMDArray< Int32, width > &scalar1, const SIMDArray< Int32, width > &scalar2) |
| Compute the minimum of each component of the specified SIMD scalars and return the result. More...
|
|
template<Size width> |
SIMDArray< Int32, width > | max (const SIMDArray< Int32, width > &scalar1, const SIMDArray< Int32, width > &scalar2) |
| Compute the maximum of each component of the specified SIMD scalars and return the result. More...
|
|
template<Size width> |
SIMDArray< Int32, width > | select (const SIMDArray< Int32, width > &selector, const SIMDArray< Int32, width > &scalar1, const SIMDArray< Int32, width > &scalar2) |
| Select elements from the first SIMD scalar if the selector is TRUE, otherwise from the second. More...
|
|
template<typename T , Size width> |
SIMDScalar< T, width > | operator+ (const T value, const SIMDScalar< T, width > &scalar) |
| Add a scalar value to each component of this scalar and return the resulting scalar. More...
|
|
template<typename T , Size width> |
SIMDScalar< T, width > | operator- (const Float32 value, const SIMDScalar< T, width > &scalar) |
| Subtract a scalar value from each component of this scalar and return the resulting scalar. More...
|
|
template<typename T , Size width> |
SIMDScalar< T, width > | operator* (const Float32 value, const SIMDScalar< T, width > &scalar) |
| Multiply a scalar value by each component of this scalar and return the resulting scalar. More...
|
|
template<typename T , Size width> |
SIMDScalar< T, width > | operator/ (const Float32 value, const SIMDScalar< T, width > &scalar) |
| Divide each component of this scalar by a scalar value and return the resulting scalar. More...
|
|
SIMDScalar< Float32, 4 > | abs (const SIMDScalar< Float32, 4 > &scalar) |
| Compute the absolute value of each component of the specified SIMD scalar and return the result. More...
|
|
SIMDScalar< Float32, 4 > | ceiling (const SIMDScalar< Float32, 4 > &scalar) |
| Compute the ceiling of each component of the specified SIMD scalar and return the result. More...
|
|
SIMDScalar< Float32, 4 > | floor (const SIMDScalar< Float32, 4 > &scalar) |
| Compute the floor of each component of the specified SIMD scalar and return the result. More...
|
|
SIMDScalar< Float32, 4 > | sqrt (const SIMDScalar< Float32, 4 > &scalar) |
| Compute the square root of each component of the specified SIMD scalar and return the result. More...
|
|
SIMDScalar< Float32, 4 > | reciprocal (const SIMDScalar< Float32, 4 > &v) |
| Return an approximate reciprocal of the specified value with 23 bits of precision. More...
|
|
SIMDScalar< Float32, 4 > | reciprocalSqrt (const SIMDScalar< Float32, 4 > &v) |
| Return an approximate reciprocal square root of the specified value with 23 bits of precision. More...
|
|
template<UInt i1, UInt i2, UInt i3, UInt i4> |
SIMDScalar< Float32, 4 > | shuffle (const SIMDScalar< Float32, 4 > &scalar) |
| Pick 4 elements from the specified SIMD scalar and return the result. More...
|
|
template<UInt i1, UInt i2, UInt i3, UInt i4> |
SIMDScalar< Float32, 4 > | shuffle (const SIMDScalar< Float32, 4 > &scalar1, const SIMDScalar< Float32, 4 > &scalar2) |
| Pick two elements from each SIMD scalar and return the result. More...
|
|
SIMDScalar< Float32, 4 > | select (const SIMDScalar< Int32, 4 > &selector, const SIMDScalar< Float32, 4 > &scalar1, const SIMDScalar< Float32, 4 > &scalar2) |
| Select elements from the first SIMD scalar if the selector is TRUE, otherwise from the second. More...
|
|
SIMDScalar< Float32, 4 > | lows (const SIMDScalar< Float32, 4 > &scalar) |
| Copy the first and third element of the specified SIMD scalar into the second and fourth places. More...
|
|
SIMDScalar< Float32, 4 > | highs (const SIMDScalar< Float32, 4 > &scalar) |
| Copy the second and fourth element of the specified SIMD scalar into the first and third places. More...
|
|
SIMDScalar< Float32, 4 > | subAdd (const SIMDScalar< Float32, 4 > &scalar1, const SIMDScalar< Float32, 4 > &scalar2) |
| Subtract the first and third elements and add the second and fourth. More...
|
|
SIMDScalar< Float32, 4 > | min (const SIMDScalar< Float32, 4 > &scalar1, const SIMDScalar< Float32, 4 > &scalar2) |
| Compute the minimum of each component of the specified SIMD scalars and return the result. More...
|
|
SIMDScalar< Float32, 4 > | max (const SIMDScalar< Float32, 4 > &scalar1, const SIMDScalar< Float32, 4 > &scalar2) |
| Compute the maximum of each component of the specified SIMD scalars and return the result. More...
|
|
SIMDScalar< Float32, 4 > | min (const SIMDScalar< Float32, 4 > &scalar) |
| Compute the minimum component of the specified SIMD scalar and return the wide result. More...
|
|
SIMDScalar< Float32, 4 > | max (const SIMDScalar< Float32, 4 > &scalar) |
| Compute the maximum component of the specified SIMD scalar and return the wide result. More...
|
|
SIMDScalar< Float32, 4 > | cross (const SIMDScalar< Float32, 4 > &v1, const SIMDScalar< Float32, 4 > &v2) |
| Return the 3D cross product of two vectors, where each vector has the form (x,y,z,0). More...
|
|
SIMDScalar< Float32, 4 > | dot (const SIMDScalar< Float32, 4 > &v1, const SIMDScalar< Float32, 4 > &v2) |
| Return the dot product of two vectors. More...
|
|
SIMDScalar< Float32, 4 > | normalize (const SIMDScalar< Float32, 4 > &v) |
| Normalize the specified vector using a fast approximate algorithm, accurate to ~23 bits. More...
|
|
SIMDScalar< Float32, 4 > | ln (const SIMDScalar< Float32, 4 > &v) |
| Compute and return the natural logarithm of the specified vector. More...
|
|
SIMDScalar< Float32, 4 > | log10 (const SIMDScalar< Float32, 4 > &v) |
| Compute and return the base-10 logarithm of the specified vector. More...
|
|
SIMDScalar< Float32, 4 > | sin (const SIMDScalar< Float32, 4 > &v) |
| Compute and return the sine of the specified vector. More...
|
|
SIMDScalar< Float32, 4 > | cos (const SIMDScalar< Float32, 4 > &v) |
| Compute and return the cosine of the specified vector. More...
|
|
SIMDScalar< Float64, 2 > | abs (const SIMDScalar< Float64, 2 > &scalar) |
| Compute the absolute value of each component of the specified SIMD scalar and return the result. More...
|
|
SIMDScalar< Float64, 2 > | ceiling (const SIMDScalar< Float64, 2 > &scalar) |
| Compute the ceiling of each component of the specified SIMD scalar and return the result. More...
|
|
SIMDScalar< Float64, 2 > | floor (const SIMDScalar< Float64, 2 > &scalar) |
| Compute the floor of each component of the specified SIMD scalar and return the result. More...
|
|
SIMDScalar< Float64, 2 > | sqrt (const SIMDScalar< Float64, 2 > &scalar) |
| Compute the square root of each component of the specified SIMD scalar and return the result. More...
|
|
template<UInt i1, UInt i2> |
SIMDScalar< Float64, 2 > | shuffle (const SIMDScalar< Float64, 2 > &scalar) |
| Pick 2 elements from the specified SIMD scalar and return the result. More...
|
|
template<UInt i1, UInt i2> |
SIMDScalar< Float64, 2 > | shuffle (const SIMDScalar< Float64, 2 > &scalar1, const SIMDScalar< Float64, 2 > &scalar2) |
| Pick one element from each SIMD scalar and return the result. More...
|
|
SIMDScalar< Float64, 2 > | select (const SIMDScalar< Int64, 2 > &selector, const SIMDScalar< Float64, 2 > &scalar1, const SIMDScalar< Float64, 2 > &scalar2) |
| Select elements from the first SIMD scalar if the selector is TRUE, otherwise from the second. More...
|
|
SIMDScalar< Float64, 2 > | subAdd (const SIMDScalar< Float64, 2 > &scalar1, const SIMDScalar< Float64, 2 > &scalar2) |
| Subtract the first and third elements and add the second and fourth. More...
|
|
SIMDScalar< Float64, 2 > | min (const SIMDScalar< Float64, 2 > &scalar1, const SIMDScalar< Float64, 2 > &scalar2) |
| Compute the minimum of each component of the specified SIMD scalars and return the result. More...
|
|
SIMDScalar< Float64, 2 > | max (const SIMDScalar< Float64, 2 > &scalar1, const SIMDScalar< Float64, 2 > &scalar2) |
| Compute the maximum of each component of the specified SIMD scalars and return the result. More...
|
|
SIMDScalar< Float64, 2 > | min (const SIMDScalar< Float64, 2 > &scalar) |
| Compute the minimum component of the specified SIMD scalar and return the wide result. More...
|
|
SIMDScalar< Float64, 2 > | max (const SIMDScalar< Float64, 2 > &scalar) |
| Compute the maximum component of the specified SIMD scalar and return the wide result. More...
|
|
SIMDScalar< Int16, 8 > | abs (const SIMDScalar< Int16, 8 > &scalar) |
| Compute the absolute value of each component of the specified SIMD scalar and return the result. More...
|
|
SIMDScalar< Int16, 8 > | min (const SIMDScalar< Int16, 8 > &scalar1, const SIMDScalar< Int16, 8 > &scalar2) |
| Compute the minimum of each component of the specified SIMD scalars and return the result. More...
|
|
SIMDScalar< Int16, 8 > | max (const SIMDScalar< Int16, 8 > &scalar1, const SIMDScalar< Int16, 8 > &scalar2) |
| Compute the maximum of each component of the specified SIMD scalars and return the result. More...
|
|
SIMDScalar< Int16, 8 > | select (const SIMDScalar< Int16, 8 > &selector, const SIMDScalar< Int16, 8 > &scalar1, const SIMDScalar< Int16, 8 > &scalar2) |
| Select elements from the first SIMD scalar if the selector is TRUE, otherwise from the second. More...
|
|
SIMDScalar< Int32, 4 > | abs (const SIMDScalar< Int32, 4 > &scalar) |
| Compute the absolute value of each component of the specified SIMD scalar and return the result. More...
|
|
SIMDScalar< Int32, 4 > | min (const SIMDScalar< Int32, 4 > &scalar1, const SIMDScalar< Int32, 4 > &scalar2) |
| Compute the minimum of each component of the specified SIMD scalars and return the result. More...
|
|
SIMDScalar< Int32, 4 > | max (const SIMDScalar< Int32, 4 > &scalar1, const SIMDScalar< Int32, 4 > &scalar2) |
| Compute the maximum of each component of the specified SIMD scalars and return the result. More...
|
|
template<UInt i1, UInt i2, UInt i3, UInt i4> |
SIMDScalar< Int32, 4 > | shuffle (const SIMDScalar< Int32, 4 > &scalar) |
| Pick 4 elements from the specified SIMD scalar and return the result. More...
|
|
template<UInt i1, UInt i2, UInt i3, UInt i4> |
SIMDScalar< Int32, 4 > | shuffle (const SIMDScalar< Int32, 4 > &scalar1, const SIMDScalar< Int32, 4 > &scalar2) |
| Pick two elements from each SIMD scalar and return the result. More...
|
|
SIMDScalar< Int32, 4 > | select (const SIMDScalar< Int32, 4 > &selector, const SIMDScalar< Int32, 4 > &scalar1, const SIMDScalar< Int32, 4 > &scalar2) |
| Select elements from the first SIMD scalar if the selector is TRUE, otherwise from the second. More...
|
|
SIMDScalar< Int32, 4 > | lows (const SIMDScalar< Int32, 4 > &scalar) |
| Copy the first and third element of the specified SIMD scalar into the second and fourth places. More...
|
|
SIMDScalar< Int32, 4 > | highs (const SIMDScalar< Int32, 4 > &scalar) |
| Copy the second and fourth element of the specified SIMD scalar into the first and third places. More...
|
|
SIMDScalar< Int64, 2 > | abs (const SIMDScalar< Int64, 2 > &scalar) |
| Compute the absolute value of each component of the specified SIMD scalar and return the result. More...
|
|
SIMDScalar< Int64, 2 > | min (const SIMDScalar< Int64, 2 > &scalar1, const SIMDScalar< Int64, 2 > &scalar2) |
| Compute the minimum of each component of the specified SIMD scalars and return the result. More...
|
|
SIMDScalar< Int64, 2 > | max (const SIMDScalar< Int64, 2 > &scalar1, const SIMDScalar< Int64, 2 > &scalar2) |
| Compute the maximum of each component of the specified SIMD scalars and return the result. More...
|
|
template<UInt i1, UInt i2> |
SIMDScalar< Int64, 2 > | shuffle (const SIMDScalar< Int64, 2 > &scalar) |
| Pick 2 elements from the specified SIMD scalar and return the result. More...
|
|
template<UInt i1, UInt i2> |
SIMDScalar< Int64, 2 > | shuffle (const SIMDScalar< Int64, 2 > &scalar1, const SIMDScalar< Int64, 2 > &scalar2) |
| Pick one element from each SIMD scalar and return the result. More...
|
|
SIMDScalar< Int64, 2 > | select (const SIMDScalar< Int64, 2 > &selector, const SIMDScalar< Int64, 2 > &scalar1, const SIMDScalar< Int64, 2 > &scalar2) |
| Select elements from the first SIMD scalar if the selector is TRUE, otherwise from the second. More...
|
|
template<typename T , Size width> |
SIMDScalar< T, width > | dot (const SIMDVector3D< T, width > &vector1, const SIMDVector3D< T, width > &vector2) |
| Compute and return the dot product of two SIMD 3D vectors. More...
|
|
template<typename T , Size width> |
SIMDVector3D< T, width > | cross (const SIMDVector3D< T, width > &vector1, const SIMDVector3D< T, width > &vector2) |
| Compute and return the cross product of two SIMD 3D vectors. More...
|
|
template<typename T > |
T | dot (const SHExpansion< T > &sh1, const SHExpansion< T > &sh2) |
| Compute the dot product of the specified spherical harmonic expansions. More...
|
|
Bool | add (Tensor &tensor1, const Tensor &tensor2) |
| Add a tensor to another tensor, modifying the first tensor. More...
|
|
Bool | add (Tensor &result, const Tensor &tensor1, const Tensor &tensor2) |
| Add two tensors, storing the result in a third tensor. More...
|
|
Bool | subtract (Tensor &tensor1, const Tensor &tensor2) |
| Add a tensor to another tensor, modifying the first tensor. More...
|
|
Bool | subtract (Tensor &result, const Tensor &tensor1, const Tensor &tensor2) |
| Add two tensors, storing the result in a third tensor. More...
|
|
Bool | multiply (Tensor &tensor1, const Tensor &tensor2) |
| Add a tensor to another tensor, modifying the first tensor. More...
|
|
Bool | multiply (Tensor &result, const Tensor &tensor1, const Tensor &tensor2) |
| Add two tensors, storing the result in a third tensor. More...
|
|
Bool | multiplyScalars (Tensor &tensor1, const Tensor &tensor2) |
| Add a tensor to another tensor, modifying the first tensor. More...
|
|
Bool | multiplyScalars (Tensor &result, const Tensor &tensor1, const Tensor &tensor2) |
| Add two tensors, storing the result in a third tensor. More...
|
|
Bool | divide (Tensor &tensor1, const Tensor &tensor2) |
| Add a tensor to another tensor, modifying the first tensor. More...
|
|
Bool | divide (Tensor &result, const Tensor &tensor1, const Tensor &tensor2) |
| Add two tensors, storing the result in a third tensor. More...
|
|
Bool | divideScalars (Tensor &tensor1, const Tensor &tensor2) |
| Add a tensor to another tensor, modifying the first tensor. More...
|
|
Bool | divideScalars (Tensor &result, const Tensor &tensor1, const Tensor &tensor2) |
| Add two tensors, storing the result in a third tensor. More...
|
|
Bool | lu (const Tensor &A, Tensor &L, Tensor &U) |
| Compute the LU factorization of an input matrix A returning the L and U matrices in the output parameters. More...
|
|
Bool | qr (const Tensor &A, Tensor &Q, Tensor &R) |
| Do a QR factorization of the specified matrix, returning the Q and R matrices in the output parameters. More...
|
|
Bool | leastSquares (const Tensor &A, const Tensor &b, Tensor &x) |
| Use a least-squares algorithm to find the best fitting solution for a linear system A*x = b. More...
|
|
Bool | solve (const Tensor &A, const Tensor &b, Tensor &x) |
| Solve a linear system A*x = b, returning whether or not it was able to be solved. More...
|
|
Bool | invert (const Tensor &A, Tensor &inverse) |
| Compute the inverse of the matrix A, returning whether or not it was able to be inverted. More...
|
|
template<> |
void | TensorType::check< lang::Float16 > () |
|
template<> |
TensorType | TensorType::of< lang::Float16 > () |
|
template<> |
void | TensorType::check< VectorND< lang::Float16, 2 > > () |
|
template<> |
TensorType | TensorType::of< VectorND< lang::Float16, 2 > > () |
|
template<> |
void | TensorType::check< VectorND< lang::Float16, 3 > > () |
|
template<> |
TensorType | TensorType::of< VectorND< lang::Float16, 3 > > () |
|
template<> |
void | TensorType::check< VectorND< lang::Float16, 4 > > () |
|
template<> |
TensorType | TensorType::of< VectorND< lang::Float16, 4 > > () |
|
template<> |
void | TensorType::check< Quaternion4D< lang::Float16 > > () |
|
template<> |
TensorType | TensorType::of< Quaternion4D< lang::Float16 > > () |
|
template<> |
void | TensorType::check< MatrixND< lang::Float16, 2, 2 > > () |
|
template<> |
TensorType | TensorType::of< MatrixND< lang::Float16, 2, 2 > > () |
|
template<> |
void | TensorType::check< MatrixND< lang::Float16, 3, 3 > > () |
|
template<> |
TensorType | TensorType::of< MatrixND< lang::Float16, 3, 3 > > () |
|
template<> |
void | TensorType::check< MatrixND< lang::Float16, 4, 4 > > () |
|
template<> |
TensorType | TensorType::of< MatrixND< lang::Float16, 4, 4 > > () |
|
template<typename T > |
T | operator* (T value, const Transform2D< T > &transform) |
| Scale the specified scalar value to object space with the inverse of the specified transformation. More...
|
|
template<typename T > |
VectorND< T, 2 > | operator* (const VectorND< T, 2 > &vector, const Transform2D< T > &transform) |
| Transform the specified vector to object space with the inverse of the specified transformation. More...
|
|
template<typename T > |
MatrixND< T, 2, 2 > | operator* (const MatrixND< T, 2, 2 > &matrix, const Transform2D< T > &transform) |
| Transform the specified matrix to object space with the inverse of the specified transformation. More...
|
|
template<typename T > |
Ray2D< T > | operator* (const Ray2D< T > &ray, const Transform2D< T > &transform) |
| Transform the specified ray to object space with the inverse of the specified transformation. More...
|
|
template<typename T > |
Plane2D< T > | operator* (const Plane2D< T > &plane, const Transform2D< T > &transform) |
| Transform the specified plane to object space with the inverse of the specified transformation. More...
|
|
template<typename T > |
T | operator* (T value, const Transform3D< T > &transform) |
| Scale the specified scalar value to object space with the inverse of the specified transformation. More...
|
|
template<typename T > |
VectorND< T, 3 > | operator* (const VectorND< T, 2 > &vector, const Transform3D< T > &transform) |
| Transform the specified vector to object space with the inverse of the specified transformation. More...
|
|
template<typename T > |
MatrixND< T, 3, 3 > | operator* (const MatrixND< T, 2, 2 > &matrix, const Transform3D< T > &transform) |
| Transform the specified matrix to object space with the inverse of the specified transformation. More...
|
|
template<typename T > |
Ray3D< T > | operator* (const Ray3D< T > &ray, const Transform3D< T > &transform) |
| Transform the specified ray to object space with the inverse of the specified transformation. More...
|
|
template<typename T > |
Plane3D< T > | operator* (const Plane3D< T > &plane, const Transform3D< T > &transform) |
| Transform the specified plane to object space with the inverse of the specified transformation. More...
|
|
template<typename T > |
VectorND< T, 2 > | operator+ (T value, const VectorND< T, 2 > &vector) |
| Add a value to every component of the vector. More...
|
|
template<typename T > |
VectorND< T, 2 > | operator- (T value, const VectorND< T, 2 > &vector) |
| Subtract every component of the vector from the value, returning a vector result. More...
|
|
template<typename T > |
VectorND< T, 2 > | operator* (T value, const VectorND< T, 2 > &vector) |
| Multiply every component of the vector with the value, returning a vector result. More...
|
|
template<typename T > |
VectorND< T, 2 > | operator/ (T value, const VectorND< T, 2 > &vector) |
| Divide a value by every component of the vector, returning a vector result. More...
|
|
template<typename T > |
T | dot (const VectorND< T, 2 > &vector1, const VectorND< T, 2 > &vector2) |
| Compute and return the dot product of two vectors. More...
|
|
template<typename T > |
VectorND< T, 2 > | perp (const VectorND< T, 2 > &vector) |
| Return the "perp" product of a vector. More...
|
|
template<typename T > |
VectorND< T, 2 > | midpoint (const VectorND< T, 2 > &vector1, const VectorND< T, 2 > &vector2) |
| Compute the midpoint (e.g. average) of two vectors. More...
|
|
template<typename T > |
VectorND< T, 2 > | abs (const VectorND< T, 2 > &vector) |
| Return the absolute value of the specified vector, such that the every component is positive. More...
|
|
template<typename T > |
VectorND< T, 2 > | min (const VectorND< T, 2 > &vector1, const VectorND< T, 2 > &vector2) |
| Compute the component-wise minimum of two vectors. More...
|
|
template<typename T > |
VectorND< T, 2 > | max (const VectorND< T, 2 > &vector1, const VectorND< T, 2 > &vector2) |
| Compute the component-wise minimum of two vectors. More...
|
|
template<typename T > |
VectorND< T, 2 > | floor (const VectorND< T, 2 > &vector) |
| Return the floor of the specified vector, rounding each component down to the nearest integer. More...
|
|
template<typename T > |
VectorND< T, 2 > | ceiling (const VectorND< T, 2 > &vector) |
| Return the floor of the specified vector, rounding each component up to the nearest integer. More...
|
|
template<typename T > |
VectorND< T, 2 > | mod (const VectorND< T, 2 > &vector, const T &modulus) |
| Return the component-wise modulus of the specified vector. More...
|
|
template<typename T > |
VectorND< T, 2 > | mod (const VectorND< T, 2 > &vector, const VectorND< T, 2 > &modulus) |
| Return the component-wise modulus of the specified vector. More...
|
|
template<typename T > |
Bool | isNAN (const VectorND< T, 2 > &vector) |
| Return whether or not any component of this vector is Not-A-Number. More...
|
|
template<typename T , Index dimension, Index i0, Index i1> |
VectorND< T, 2 > | operator+ (T value, const Swizzle2D< T, dimension, i0, i1 > &vector) |
| Add a scalar to every component of the vector. More...
|
|
template<typename T , Index dimension, Index i0, Index i1> |
VectorND< T, 2 > | operator- (T value, const Swizzle2D< T, dimension, i0, i1 > &vector) |
| Subtract a scalar to every component of the vector. More...
|
|
template<typename T , Index dimension, Index i0, Index i1> |
VectorND< T, 2 > | operator* (T value, const Swizzle2D< T, dimension, i0, i1 > &vector) |
| Multiply every component of a vector with scalar, returning a vector result. More...
|
|
template<typename T , Index dimension, Index i0, Index i1> |
VectorND< T, 2 > | operator/ (T value, const Swizzle2D< T, dimension, i0, i1 > &vector) |
| Divide a value by every component of the vector, returning a vector result. More...
|
|
template<typename T > |
VectorND< T, 3 > | operator+ (T value, const VectorND< T, 3 > &vector) |
| Add a value to every component of the vector. More...
|
|
template<typename T > |
VectorND< T, 3 > | operator- (T value, const VectorND< T, 3 > &vector) |
| Subtract every component of the vector from the value, returning a vector result. More...
|
|
template<typename T > |
VectorND< T, 3 > | operator* (T value, const VectorND< T, 3 > &vector) |
| Multiply every component of the vector with the value, returning a vector result. More...
|
|
template<typename T > |
VectorND< T, 3 > | operator/ (T value, const VectorND< T, 3 > &vector) |
| Divide a value by every component of the vector, returning a vector result. More...
|
|
template<typename T > |
T | dot (const VectorND< T, 3 > &vector1, const VectorND< T, 3 > &vector2) |
| Compute and return the dot product of two vectors. More...
|
|
template<typename T > |
VectorND< T, 3 > | cross (const VectorND< T, 3 > &vector1, const VectorND< T, 3 > &vector2) |
| Compute and return the cross product of two vectors. More...
|
|
template<typename T > |
VectorND< T, 3 > | midpoint (const VectorND< T, 3 > &vector1, const VectorND< T, 3 > &vector2) |
| Compute the midpoint (e.g. average) of two vectors. More...
|
|
template<typename T > |
VectorND< T, 3 > | abs (const VectorND< T, 3 > &vector) |
| Return the absolute value of the specified vector, such that the every component is positive. More...
|
|
template<typename T > |
VectorND< T, 3 > | min (const VectorND< T, 3 > &vector1, const VectorND< T, 3 > &vector2) |
| Compute the component-wise minimum of two vectors. More...
|
|
template<typename T > |
VectorND< T, 3 > | max (const VectorND< T, 3 > &vector1, const VectorND< T, 3 > &vector2) |
| Compute the component-wise minimum of two vectors. More...
|
|
template<typename T > |
VectorND< T, 3 > | floor (const VectorND< T, 3 > &vector) |
| Return the floor of the specified vector, rounding each component down to the nearest integer. More...
|
|
template<typename T > |
VectorND< T, 3 > | ceiling (const VectorND< T, 3 > &vector) |
| Return the floor of the specified vector, rounding each component up to the nearest integer. More...
|
|
template<typename T > |
VectorND< T, 3 > | mod (const VectorND< T, 3 > &vector, const T &modulus) |
| Return the component-wise modulus of the specified vector. More...
|
|
template<typename T > |
VectorND< T, 3 > | mod (const VectorND< T, 3 > &vector, const VectorND< T, 3 > &modulus) |
| Return the component-wise modulus of the specified vector. More...
|
|
template<typename T > |
Bool | isNAN (const VectorND< T, 3 > &vector) |
| Return whether or not any component of this vector is Not-A-Number. More...
|
|
template<typename T > |
VectorND< T, 3 > | barycentric (const VectorND< T, 3 > &v1, const VectorND< T, 3 > &v2, const VectorND< T, 3 > &v3, const VectorND< T, 3 > &point) |
| Compute and return the barycentric coordinates of a point relative to the given triangle vertices. More...
|
|
template<typename T , Index dimension, Index i0, Index i1, Index i2> |
VectorND< T, 3 > | operator+ (T value, const Swizzle3D< T, dimension, i0, i1, i2 > &vector) |
| Add a scalar to every component of the vector. More...
|
|
template<typename T , Index dimension, Index i0, Index i1, Index i2> |
VectorND< T, 3 > | operator- (T value, const Swizzle3D< T, dimension, i0, i1, i2 > &vector) |
| Subtract a scalar to every component of the vector. More...
|
|
template<typename T , Index dimension, Index i0, Index i1, Index i2> |
VectorND< T, 3 > | operator* (T value, const Swizzle3D< T, dimension, i0, i1, i2 > &vector) |
| Multiply every component of a vector with scalar, returning a vector result. More...
|
|
template<typename T , Index dimension, Index i0, Index i1, Index i2> |
VectorND< T, 3 > | operator/ (T value, const Swizzle3D< T, dimension, i0, i1, i2 > &vector) |
| Divide a value by every component of the vector, returning a vector result. More...
|
|
template<typename T > |
VectorND< T, 4 > | operator+ (T value, const VectorND< T, 4 > &vector) |
| Add a value to every component of the vector. More...
|
|
template<typename T > |
VectorND< T, 4 > | operator- (T value, const VectorND< T, 4 > &vector) |
| Subtract every component of the vector from the value, returning a vector result. More...
|
|
template<typename T > |
VectorND< T, 4 > | operator* (T value, const VectorND< T, 4 > &vector) |
| Multiply every component of the vector with the value, returning a vector result. More...
|
|
template<typename T > |
VectorND< T, 4 > | operator/ (T value, const VectorND< T, 4 > &vector) |
| Divide a value by every component of the vector, returning a vector result. More...
|
|
template<typename T > |
T | dot (const VectorND< T, 4 > &vector1, const VectorND< T, 4 > &vector2) |
| Compute and return the dot product of two vectors. More...
|
|
template<typename T > |
VectorND< T, 4 > | midpoint (const VectorND< T, 4 > &vector1, const VectorND< T, 4 > &vector2) |
| Compute the midpoint (e.g. average) of two vectors. More...
|
|
template<typename T > |
VectorND< T, 4 > | abs (const VectorND< T, 4 > &vector) |
| Return the absolute value of the specified vector, such that the every component is positive. More...
|
|
template<typename T > |
VectorND< T, 4 > | min (const VectorND< T, 4 > &vector1, const VectorND< T, 4 > &vector2) |
| Compute the component-wise minimum of two vectors. More...
|
|
template<typename T > |
VectorND< T, 4 > | max (const VectorND< T, 4 > &vector1, const VectorND< T, 4 > &vector2) |
| Compute the component-wise maximum of two vectors. More...
|
|
template<typename T > |
VectorND< T, 4 > | floor (const VectorND< T, 4 > &vector) |
| Return the floor of the specified vector, rounding each component down to the nearest integer. More...
|
|
template<typename T > |
VectorND< T, 4 > | ceiling (const VectorND< T, 4 > &vector) |
| Return the floor of the specified vector, rounding each component up to the nearest integer. More...
|
|
template<typename T > |
VectorND< T, 4 > | mod (const VectorND< T, 4 > &vector, const T &modulus) |
| Return the component-wise modulus of the specified vector. More...
|
|
template<typename T > |
VectorND< T, 4 > | mod (const VectorND< T, 4 > &vector, const VectorND< T, 4 > &modulus) |
| Return the component-wise modulus of the specified vector. More...
|
|
template<typename T > |
Bool | isNAN (const VectorND< T, 4 > &vector) |
| Return whether or not any component of this vector is Not-A-Number. More...
|
|
template<typename T , Index dimension, Index i0, Index i1, Index i2, Index i3> |
VectorND< T, 4 > | operator+ (T value, const Swizzle4D< T, dimension, i0, i1, i2, i3 > &vector) |
| Add a scalar to every component of the vector. More...
|
|
template<typename T , Index dimension, Index i0, Index i1, Index i2, Index i3> |
VectorND< T, 4 > | operator- (T value, const Swizzle4D< T, dimension, i0, i1, i2, i3 > &vector) |
| Subtract a scalar to every component of the vector. More...
|
|
template<typename T , Index dimension, Index i0, Index i1, Index i2, Index i3> |
VectorND< T, 4 > | operator* (T value, const Swizzle4D< T, dimension, i0, i1, i2, i3 > &vector) |
| Multiply every component of a vector with scalar, returning a vector result. More...
|
|
template<typename T , Index dimension, Index i0, Index i1, Index i2, Index i3> |
VectorND< T, 4 > | operator/ (T value, const Swizzle4D< T, dimension, i0, i1, i2, i3 > &vector) |
| Divide a value by every component of the vector, returning a vector result. More...
|
|
template<typename T , Size dimension> |
VectorND< T, dimension > | operator* (const T &c, const VectorND< T, dimension > &vector) |
| Multiply every component of a vector by a scalar value and return the resulting vector. More...
|
|
template<typename T , Size dimension> |
VectorND< T, dimension > | operator+ (const T &c, const VectorND< T, dimension > &vector) |
| Multiply every component of a vector by a scalar value and return the resulting vector. More...
|
|
template<typename T , Size dimension> |
T | dot (const VectorND< T, dimension > &v1, const VectorND< T, dimension > &v2) |
| Return the dot product of two vectors. More...
|
|
template<typename T , Size dimension> |
VectorND< T, dimension > | midpoint (const VectorND< T, dimension > &v1, const VectorND< T, dimension > &v2) |
| Return the midpoint of two vectors. More...
|
|