STLdoc
STLdocumentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
Public Types | Static Public Member Functions | List of all members
_Ctraits< float > Class Template Reference

Public Types

typedef float _Ty
 

Static Public Member Functions

static _Ty _Flt_eps ()
 
static _Ty _Flt_max ()
 
static _Ty _Cosh (_Ty _Left, _Ty _Right)
 
static short _Exp (_Ty *_Pleft, _Ty _Right, short _Exponent)
 
static _Ty _Infv (_Ty)
 
static bool _Isinf (_Ty _Left)
 
static bool _Isnan (_Ty _Left)
 
static _Ty _Nanv (_Ty)
 
static _Ty _Sinh (_Ty _Left, _Ty _Right)
 
static _Ty asinh (_Ty _Left)
 
static _Ty atan2 (_Ty _Yval, _Ty _Xval)
 
static _Ty cos (_Ty _Left)
 
static _Ty exp (_Ty _Left)
 
static _Ty ldexp (_Ty _Left, int _Exponent)
 
static _Ty log (_Ty _Left)
 
static _Ty log1p (_Ty _Left)
 
static _Ty pow (_Ty _Left, _Ty _Right)
 
static _Ty sin (_Ty _Left)
 
static _Ty sqrt (_Ty _Left)
 
static _Ty tan (_Ty _Left)
 

Member Typedef Documentation

typedef float _Ctraits< float >::_Ty

Member Function Documentation

static _Ty _Ctraits< float >::_Cosh ( _Ty  _Left,
_Ty  _Right 
)
inlinestatic
471  { // return cosh(_Left) * _Right
472  return (_CSTD _FCosh(_Left, _Right));
473  }
constexpr const _Ty &() _Left
Definition: algorithm:3590
_CRTIMP2_PURE float __CLRCALL_PURE_OR_CDECL _FCosh(float, float)
#define _CSTD
Definition: yvals.h:570
constexpr const _Ty &() _Right
Definition: algorithm:3591
static short _Ctraits< float >::_Exp ( _Ty _Pleft,
_Ty  _Right,
short  _Exponent 
)
inlinestatic
476  { // compute exp(*_Pleft) * _Right * 2 ^ _Exponent
477  return (_CSTD _FExp(_Pleft, _Right, _Exponent));
478  }
_CRTIMP2_PURE short __CLRCALL_PURE_OR_CDECL _FExp(float *, float, short)
#define _CSTD
Definition: yvals.h:570
constexpr const _Ty &() _Right
Definition: algorithm:3591
static _Ty _Ctraits< float >::_Flt_eps ( )
inlinestatic
461  { // get epsilon
462  return (FLT_EPSILON);
463  }
static _Ty _Ctraits< float >::_Flt_max ( )
inlinestatic
466  { // get max
467  return (FLT_MAX);
468  }
static _Ty _Ctraits< float >::_Infv ( _Ty  )
inlinestatic
481  { // return infinity
483  }
Definition: limits:101
static bool _Ctraits< float >::_Isinf ( _Ty  _Left)
inlinestatic
486  { // test for infinity
487  return (_CSTD _FDtest(&_Left) == _INFCODE);
488  }
constexpr const _Ty &() _Left
Definition: algorithm:3590
#define _INFCODE
Definition: ymath.h:23
_CRTIMP2_PURE short __CLRCALL_PURE_OR_CDECL _FDtest(float *)
#define _CSTD
Definition: yvals.h:570
static bool _Ctraits< float >::_Isnan ( _Ty  _Left)
inlinestatic
491  { // test for NaN
492  return (_CSTD _FDtest(&_Left) == _NANCODE);
493  }
constexpr const _Ty &() _Left
Definition: algorithm:3590
#define _NANCODE
Definition: ymath.h:24
_CRTIMP2_PURE short __CLRCALL_PURE_OR_CDECL _FDtest(float *)
#define _CSTD
Definition: yvals.h:570
static _Ty _Ctraits< float >::_Nanv ( _Ty  )
inlinestatic
496  { // return NaN
498  }
Definition: limits:101
static _Ty _Ctraits< float >::_Sinh ( _Ty  _Left,
_Ty  _Right 
)
inlinestatic
501  { // return sinh(_Left) * _Right
502  return (_CSTD _FSinh(_Left, _Right));
503  }
constexpr const _Ty &() _Left
Definition: algorithm:3590
_CRTIMP2_PURE float __CLRCALL_PURE_OR_CDECL _FSinh(float, float)
#define _CSTD
Definition: yvals.h:570
constexpr const _Ty &() _Right
Definition: algorithm:3591
static _Ty _Ctraits< float >::asinh ( _Ty  _Left)
inlinestatic
506  { // return asinh(_Left)
507  constexpr _Ty _Ln2 = 0.69314718055994530941723212145817658F;
508 
509  bool _Neg = _Left < 0;
510  _Ty _Ans;
511 
512  if (_Neg)
513  _Left = -_Left;
514  if (_Left < 2 / _Flt_eps())
515  _Ans = log1p(_Left
516  + _Left * _Left / (1 + sqrt(_Left * _Left + 1)));
517  else
518  _Ans = log(_Left) + _Ln2;
519  return (_Neg ? -_Ans : _Ans);
520  }
constexpr const _Ty &() _Left
Definition: algorithm:3590
float _Ty
Definition: complex:458
static _Ty log1p(_Ty _Left)
Definition: complex:547
static _Ty _Flt_eps()
Definition: complex:460
static _Ty sqrt(_Ty _Left)
Definition: complex:570
static _Ty log(_Ty _Left)
Definition: complex:542
static _Ty _Ctraits< float >::atan2 ( _Ty  _Yval,
_Ty  _Xval 
)
inlinestatic
523  { // return atan(_Yval / _Xval)
524  return (_CSTD atan2f(_Yval, _Xval));
525  }
float atan2f(float _Y, float _X) __GPU_ONLY
Calculates the arctangent of _Y/_X
Definition: amp_math.h:342
#define _CSTD
Definition: yvals.h:570
static _Ty _Ctraits< float >::cos ( _Ty  _Left)
inlinestatic
528  { // return cos(_Left)
529  return (_CSTD cosf(_Left));
530  }
constexpr const _Ty &() _Left
Definition: algorithm:3590
float cosf(float _X) __GPU_ONLY
Calculates the cosine of the argument
Definition: amp_math.h:401
#define _CSTD
Definition: yvals.h:570
static _Ty _Ctraits< float >::exp ( _Ty  _Left)
inlinestatic
533  { // return exp(_Left)
534  return (_CSTD expf(_Left));
535  }
constexpr const _Ty &() _Left
Definition: algorithm:3590
float expf(float _X) __GPU_ONLY
Calculates the base-e exponential of the argument
Definition: amp_math.h:457
#define _CSTD
Definition: yvals.h:570
static _Ty _Ctraits< float >::ldexp ( _Ty  _Left,
int  _Exponent 
)
inlinestatic
538  { // return _Left * 2 ^ _Exponent
539  return (_CSTD ldexpf(_Left, _Exponent));
540  }
constexpr const _Ty &() _Left
Definition: algorithm:3590
float ldexpf(float _X, int _Exp) __GPU_ONLY
Computes a real number from the mantissa and exponent
Definition: amp_math.h:728
#define _CSTD
Definition: yvals.h:570
static _Ty _Ctraits< float >::log ( _Ty  _Left)
inlinestatic
543  { // return log(_Left)
544  return (_CSTD logf(_Left));
545  }
constexpr const _Ty &() _Left
Definition: algorithm:3590
float logf(float _X) __GPU_ONLY
Calculates the base-e logarithm of the argument
Definition: amp_math.h:760
#define _CSTD
Definition: yvals.h:570
static _Ty _Ctraits< float >::log1p ( _Ty  _Left)
inlinestatic
548  { // return log(1 + _Left)
549  if (_Left < -1)
550  return (_Nanv(_Left));
551  else if (_Left == 0)
552  return (_Left);
553  else
554  { // compute log(1 + _Left) with fixup for small _Left
555  _Ty _Leftp1 = 1 + _Left;
556  return (log(_Leftp1) - ((_Leftp1 - 1) - _Left) / _Leftp1);
557  }
558  }
constexpr const _Ty &() _Left
Definition: algorithm:3590
float _Ty
Definition: complex:458
static _Ty log(_Ty _Left)
Definition: complex:542
static _Ty _Nanv(_Ty)
Definition: complex:495
static _Ty _Ctraits< float >::pow ( _Ty  _Left,
_Ty  _Right 
)
inlinestatic
561  { // return _Left ^ _Right
562  return (_CSTD powf(_Left, _Right));
563  }
constexpr const _Ty &() _Left
Definition: algorithm:3590
float powf(float _X, float _Y) __GPU_ONLY
Calculates _X raised to the power of _Y
Definition: amp_math.h:881
#define _CSTD
Definition: yvals.h:570
constexpr const _Ty &() _Right
Definition: algorithm:3591
static _Ty _Ctraits< float >::sin ( _Ty  _Left)
inlinestatic
566  { // return sin(_Left)
567  return (_CSTD sinf(_Left));
568  }
constexpr const _Ty &() _Left
Definition: algorithm:3590
#define _CSTD
Definition: yvals.h:570
float sinf(float _X) __GPU_ONLY
Calculates the sine value of the argument
Definition: amp_math.h:996
static _Ty _Ctraits< float >::sqrt ( _Ty  _Left)
inlinestatic
571  { // return sqrt(_Left)
572  return (_CSTD sqrtf(_Left));
573  }
constexpr const _Ty &() _Left
Definition: algorithm:3590
float sqrtf(float _X) __GPU_ONLY
Calculates the squre root of the argument
Definition: amp_math.h:1086
#define _CSTD
Definition: yvals.h:570
static _Ty _Ctraits< float >::tan ( _Ty  _Left)
inlinestatic
576  { // return tan(_Left)
577  return (_CSTD tanf(_Left));
578  }
constexpr const _Ty &() _Left
Definition: algorithm:3590
float tanf(float _X) __GPU_ONLY
Calculates the tangent value of the argument
Definition: amp_math.h:1114
#define _CSTD
Definition: yvals.h:570

The documentation for this class was generated from the following file: