Collaboration diagram for Arithmetic operations:
|
Functions | |
| template<int N, typename T1, typename T2> | |
| ShGeneric< N, CT1T2 > | SH::operator+ (const ShGeneric< N, T1 > &left, const ShGeneric< N, T2 > &right) |
| Addition. | |
| template<int N, typename T1, typename T2> | |
| ShGeneric< N, CT1T2 > | operator+ (const ShGeneric< 1, T1 > &left, const ShGeneric< N, T2 > &right) |
| template<int N, typename T1, typename T2> | |
| ShGeneric< N, CT1T2 > | operator+ (const ShGeneric< N, T1 > &left, const ShGeneric< 1, T2 > &right) |
| template<typename T1, typename T2> | |
| ShGeneric< 1, CT1T2 > | operator+ (const ShGeneric< 1, T1 > &left, const ShGeneric< 1, T2 > &right) |
| SH_SHLIB_CONST_SCALAR_OP_DECL (operator+) | |
| SH_SHLIB_CONST_N_OP_BOTH_DECL (operator+) | |
| template<int N, typename T1, typename T2> | |
| ShGeneric< N, CT1T2 > | SH::operator- (const ShGeneric< N, T1 > &left, const ShGeneric< N, T2 > &right) |
| Subtraction. | |
| template<int N, typename T1, typename T2> | |
| ShGeneric< N, CT1T2 > | operator- (const ShGeneric< 1, T1 > &left, const ShGeneric< N, T2 > &right) |
| template<int N, typename T1, typename T2> | |
| ShGeneric< N, CT1T2 > | operator- (const ShGeneric< N, T1 > &left, const ShGeneric< 1, T2 > &right) |
| template<typename T1, typename T2> | |
| ShGeneric< 1, CT1T2 > | operator- (const ShGeneric< 1, T1 > &left, const ShGeneric< 1, T2 > &right) |
| SH_SHLIB_CONST_SCALAR_OP_DECL (operator-) | |
| SH_SHLIB_CONST_N_OP_BOTH_DECL (operator-) | |
| template<int N, typename T1, typename T2> | |
| ShGeneric< N, CT1T2 > | SH::operator * (const ShGeneric< N, T1 > &left, const ShGeneric< N, T2 > &right) |
| Multiplication. | |
| template<int N, typename T1, typename T2> | |
| ShGeneric< N, CT1T2 > | operator * (const ShGeneric< 1, T1 > &left, const ShGeneric< N, T2 > &right) |
| template<int N, typename T1, typename T2> | |
| ShGeneric< N, CT1T2 > | operator * (const ShGeneric< N, T1 > &left, const ShGeneric< 1, T2 > &right) |
| template<typename T1, typename T2> | |
| ShGeneric< 1, CT1T2 > | operator * (const ShGeneric< 1, T1 > &left, const ShGeneric< 1, T2 > &right) |
| SH_SHLIB_CONST_SCALAR_OP_DECL (operator *) | |
| SH_SHLIB_CONST_N_OP_BOTH_DECL (operator *) | |
| template<int N, typename T1, typename T2> | |
| ShGeneric< N, CT1T2 > | SH::operator/ (const ShGeneric< N, T1 > &left, const ShGeneric< N, T2 > &right) |
| Division. | |
| template<int N, typename T1, typename T2> | |
| ShGeneric< N, CT1T2 > | operator/ (const ShGeneric< N, T1 > &left, const ShGeneric< 1, T2 > &right) |
| template<int N, typename T1, typename T2> | |
| ShGeneric< N, CT1T2 > | operator/ (const ShGeneric< 1, T1 > &left, const ShGeneric< N, T2 > &right) |
| template<typename T1, typename T2> | |
| ShGeneric< 1, CT1T2 > | operator/ (const ShGeneric< 1, T1 > &left, const ShGeneric< 1, T2 > &right) |
| SH_SHLIB_CONST_SCALAR_OP_DECL (operator/) | |
| SH_SHLIB_CONST_N_OP_LEFT_DECL (operator/) | |
| template<int N, typename T> | |
| ShGeneric< N, T > | SH::exp (const ShGeneric< N, T > &var) |
| Exponent base 10. | |
| template<int N, typename T> | |
| ShGeneric< N, T > | SH::exp2 (const ShGeneric< N, T > &var) |
| Exponent base 2. | |
| template<int N, typename T> | |
| ShGeneric< N, T > | SH::expm1 (const ShGeneric< N, T > &x) |
| Minus-one Exponent base 10. | |
| template<int N, typename T> | |
| ShGeneric< N, T > | SH::log (const ShGeneric< N, T > &var) |
| Logarithm base 10. | |
| template<int N, typename T> | |
| ShGeneric< N, T > | SH::log2 (const ShGeneric< N, T > &var) |
| Logarithm base 2. | |
| template<int N, typename T> | |
| ShGeneric< N, T > | SH::logp1 (const ShGeneric< N, T > &x) |
| Plus-One Logarithm base 10. | |
| template<int N, typename T1, typename T2, typename T3> | |
| ShGeneric< N, CT1T2 > | SH::pow (const ShGeneric< N, T1 > &left, const ShGeneric< N, T2 > &right) |
| Power. | |
| template<int N, typename T1, typename T2, typename T3> | |
| ShGeneric< N, CT1T2 > | pow (const ShGeneric< N, T1 > &left, const ShGeneric< 1, T2 > &right) |
| template<typename T1, typename T2, typename T3> | |
| ShGeneric< 1, CT1T2 > | pow (const ShGeneric< 1, T1 > &left, const ShGeneric< 1, T2 > &right) |
| SH_SHLIB_CONST_SCALAR_OP_DECL (pow) | |
| SH_SHLIB_CONST_N_OP_RIGHT_DECL (pow) | |
| template<int N, typename T1, typename T2, typename T3> | |
| ShGeneric< N, CT1T2T3 > | SH::mad (const ShGeneric< N, T1 > &m1, const ShGeneric< N, T2 > &m2, const ShGeneric< N, T3 > &a) |
| Multiply and add. | |
| template<int N, typename T1, typename T2, typename T3> | |
| ShGeneric< N, CT1T2T3 > | mad (const ShGeneric< N, T1 > &m1, const ShGeneric< 1, T2 > &m2, const ShGeneric< N, T3 > &a) |
| template<int N, typename T1, typename T2, typename T3> | |
| ShGeneric< N, CT1T2T3 > | mad (const ShGeneric< 1, T1 > &m1, const ShGeneric< N, T2 > &m2, const ShGeneric< N, T3 > &a) |
| template<typename T1, typename T2, typename T3> | |
| ShGeneric< 1, CT1T2T3 > | mad (const ShGeneric< 1, T1 > &m1, const ShGeneric< 1, T2 > &m2, const ShGeneric< 1, T3 > &a) |
| template<int N, typename T1, typename T2> | |
| ShGeneric< N, CT1T2 > | mad (double m1, const ShGeneric< N, T1 > &m2, const ShGeneric< N, T2 > &a) |
| template<int N, typename T1, typename T2> | |
| ShGeneric< N, CT1T2 > | mad (const ShGeneric< N, T1 > &m1, double m2, const ShGeneric< N, T2 > &a) |
| template<int N, typename T> | |
| ShGeneric< N, T > | rcp (const ShGeneric< N, T > &var) |
| template<int N, typename T> | |
| ShGeneric< N, T > | sqrt (const ShGeneric< N, T > &var) |
| template<int N, typename T> | |
| ShGeneric< N, T > | rsqrt (const ShGeneric< N, T > &var) |
| template<int N, typename T> | |
| ShGeneric< N, T > | cbrt (const ShGeneric< N, T > &var) |
|
||||||||||
|
Exponent base 10. Operates componentwise on tuples. Returns the natural exponent of x. Definition at line 193 of file ShLibArithImpl.hpp. Referenced by SH::expm1(). |
|
||||||||||
|
Exponent base 2. Operates componentwise on tuples. Returns the exponent of x using base 2. Definition at line 202 of file ShLibArithImpl.hpp. |
|
||||||||||
|
Minus-one Exponent base 10. Operates componentwise on tuples. Returns the exponent of x - 1 using base 10. Definition at line 220 of file ShLibArithImpl.hpp. References SH::exp(). |
|
||||||||||
|
Logarithm base 10. Operates componentwise on tuples. Returns the natural logarithm of x. Definition at line 227 of file ShLibArithImpl.hpp. Referenced by SH::logp1(). |
|
||||||||||
|
Logarithm base 2. Operates componentwise on tuples. Returns the logarithm of x using base 2. Definition at line 236 of file ShLibArithImpl.hpp. |
|
||||||||||
|
Plus-One Logarithm base 10. Operates componentwise on tuples. Returns the logarithm of x + 1 using base 10. Definition at line 254 of file ShLibArithImpl.hpp. References SH::log(). |
|
||||||||||||||||||||
|
Multiply and add. This is an intrinsic to access the assembly instruction of the same name. Multiply-add is potentially cheaper than a separate multiply and add. Note: potentially. Definition at line 288 of file ShLibArithImpl.hpp. Referenced by ShUtil::hashlcg(), ShUtil::ShNoise< M, T, P >::perlin(), ShUtil::smoothstep(), and ShUtil::sturbulence(). |
|
||||||||||||||||
|
Multiplication. On tuples, this operator acts componentwise. If a scalar is multiplied by a tuple, the scalar is promoted by duplication to a tuple. Definition at line 116 of file ShLibArithImpl.hpp. |
|
||||||||||||||||
|
Addition. On tuples, this operator acts componentwise.
Definition at line 38 of file ShLibArithImpl.hpp. |
|
||||||||||||||||
|
Subtraction. On tuples, this operator acts componentwise.
Definition at line 77 of file ShLibArithImpl.hpp. |
|
||||||||||||||||
|
Division. On tuples, this operator acts componentwise. If a tuple is divided by a scalar (or vice versa), the scalar is promoted by duplication to a tuple. Definition at line 155 of file ShLibArithImpl.hpp. |
|
||||||||||||||||
|
Power. Raise a tuple to a power.
Definition at line 261 of file ShLibArithImpl.hpp. Referenced by SH::lit(). |
1.4.1