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 ()
 
static bool _Isinf (_Ty _Left)
 
static bool _Isnan (_Ty _Left)
 
static _Ty _Nanv ()
 
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
467  { // return cosh(_Left) * _Right
468  return (_CSTD _FCosh(_Left, _Right));
469  }
constexpr const _Ty &() _Left
Definition: algorithm:3722
_CRTIMP2_PURE float __CLRCALL_PURE_OR_CDECL _FCosh(float, float)
#define _CSTD
Definition: yvals.h:570
constexpr const _Ty &() _Right
Definition: algorithm:3723
static short _Ctraits< float >::_Exp ( _Ty _Pleft,
_Ty  _Right,
short  _Exponent 
)
inlinestatic
472  { // compute exp(*_Pleft) * _Right * 2 ^ _Exponent
473  return (_CSTD _FExp(_Pleft, _Right, _Exponent));
474  }
_CRTIMP2_PURE short __CLRCALL_PURE_OR_CDECL _FExp(float *, float, short)
#define _CSTD
Definition: yvals.h:570
constexpr const _Ty &() _Right
Definition: algorithm:3723
static _Ty _Ctraits< float >::_Flt_eps ( )
inlinestatic
457  { // get epsilon
458  return (FLT_EPSILON);
459  }
#define FLT_EPSILON
Definition: float.h:82
static _Ty _Ctraits< float >::_Flt_max ( )
inlinestatic
462  { // get max
463  return (FLT_MAX);
464  }
#define FLT_MAX
Definition: float.h:86
static _Ty _Ctraits< float >::_Infv ( )
inlinestatic
477  { // return infinity
479  }
Definition: limits:102
static bool _Ctraits< float >::_Isinf ( _Ty  _Left)
inlinestatic
482  { // test for infinity
483  return (_CSTD _FDtest(&_Left) == _INFCODE);
484  }
constexpr const _Ty &() _Left
Definition: algorithm:3722
#define _INFCODE
Definition: corecrt_math.h:97
_CRTIMP2_PURE short __CLRCALL_PURE_OR_CDECL _FDtest(float *)
#define _CSTD
Definition: yvals.h:570
static bool _Ctraits< float >::_Isnan ( _Ty  _Left)
inlinestatic
487  { // test for NaN
488  return (_CSTD _FDtest(&_Left) == _NANCODE);
489  }
constexpr const _Ty &() _Left
Definition: algorithm:3722
#define _NANCODE
Definition: corecrt_math.h:98
_CRTIMP2_PURE short __CLRCALL_PURE_OR_CDECL _FDtest(float *)
#define _CSTD
Definition: yvals.h:570
static _Ty _Ctraits< float >::_Nanv ( )
inlinestatic
492  { // return NaN
494  }
Definition: limits:102
static _Ty _Ctraits< float >::_Sinh ( _Ty  _Left,
_Ty  _Right 
)
inlinestatic
497  { // return sinh(_Left) * _Right
498  return (_CSTD _FSinh(_Left, _Right));
499  }
constexpr const _Ty &() _Left
Definition: algorithm:3722
_CRTIMP2_PURE float __CLRCALL_PURE_OR_CDECL _FSinh(float, float)
#define _CSTD
Definition: yvals.h:570
constexpr const _Ty &() _Right
Definition: algorithm:3723
static _Ty _Ctraits< float >::asinh ( _Ty  _Left)
inlinestatic
502  { // return asinh(_Left)
503  constexpr _Ty _Ln2 = 0.69314718055994530941723212145817658F;
504 
505  bool _Neg = _Left < 0;
506  _Ty _Ans;
507 
508  if (_Neg)
509  _Left = -_Left;
510  if (_Left < 2 / _Flt_eps())
511  _Ans = log1p(_Left
512  + _Left * _Left / (1 + sqrt(_Left * _Left + 1)));
513  else
514  _Ans = log(_Left) + _Ln2;
515  return (_Neg ? -_Ans : _Ans);
516  }
constexpr const _Ty &() _Left
Definition: algorithm:3722
float _Ty
Definition: complex:454
static _Ty log1p(_Ty _Left)
Definition: complex:543
static _Ty _Flt_eps()
Definition: complex:456
static _Ty sqrt(_Ty _Left)
Definition: complex:566
static _Ty log(_Ty _Left)
Definition: complex:538
static _Ty _Ctraits< float >::atan2 ( _Ty  _Yval,
_Ty  _Xval 
)
inlinestatic
519  { // return atan(_Yval / _Xval)
520  return (_CSTD atan2f(_Yval, _Xval));
521  }
_Check_return_ __inline float __CRTDECL atan2f(_In_ float _Y, _In_ float _X)
Definition: corecrt_math.h:631
#define _CSTD
Definition: yvals.h:570
static _Ty _Ctraits< float >::cos ( _Ty  _Left)
inlinestatic
524  { // return cos(_Left)
525  return (_CSTD cosf(_Left));
526  }
constexpr const _Ty &() _Left
Definition: algorithm:3722
_Check_return_ __inline float __CRTDECL cosf(_In_ float _X)
Definition: corecrt_math.h:646
#define _CSTD
Definition: yvals.h:570
static _Ty _Ctraits< float >::exp ( _Ty  _Left)
inlinestatic
529  { // return exp(_Left)
530  return (_CSTD expf(_Left));
531  }
constexpr const _Ty &() _Left
Definition: algorithm:3722
_Check_return_ __inline float __CRTDECL expf(_In_ float _X)
Definition: corecrt_math.h:656
#define _CSTD
Definition: yvals.h:570
static _Ty _Ctraits< float >::ldexp ( _Ty  _Left,
int  _Exponent 
)
inlinestatic
534  { // return _Left * 2 ^ _Exponent
535  return (_CSTD ldexpf(_Left, _Exponent));
536  }
constexpr const _Ty &() _Left
Definition: algorithm:3722
_Check_return_ __inline float __CRTDECL ldexpf(_In_ float _X, _In_ int _Y)
Definition: corecrt_math.h:705
#define _CSTD
Definition: yvals.h:570
static _Ty _Ctraits< float >::log ( _Ty  _Left)
inlinestatic
539  { // return log(_Left)
540  return (_CSTD logf(_Left));
541  }
constexpr const _Ty &() _Left
Definition: algorithm:3722
_Check_return_ __inline float __CRTDECL logf(_In_ float _X)
Definition: corecrt_math.h:729
#define _CSTD
Definition: yvals.h:570
static _Ty _Ctraits< float >::log1p ( _Ty  _Left)
inlinestatic
544  { // return log(1 + _Left)
545  if (_Left < -1)
546  return (_Nanv());
547  else if (_Left == 0)
548  return (_Left);
549  else
550  { // compute log(1 + _Left) with fixup for small _Left
551  _Ty _Leftp1 = 1 + _Left;
552  return (log(_Leftp1) - ((_Leftp1 - 1) - _Left) / _Leftp1);
553  }
554  }
constexpr const _Ty &() _Left
Definition: algorithm:3722
static _Ty _Nanv()
Definition: complex:491
float _Ty
Definition: complex:454
static _Ty log(_Ty _Left)
Definition: complex:538
static _Ty _Ctraits< float >::pow ( _Ty  _Left,
_Ty  _Right 
)
inlinestatic
557  { // return _Left ^ _Right
558  return (_CSTD powf(_Left, _Right));
559  }
constexpr const _Ty &() _Left
Definition: algorithm:3722
_Check_return_ __inline float __CRTDECL powf(_In_ float _X, _In_ float _Y)
Definition: corecrt_math.h:742
#define _CSTD
Definition: yvals.h:570
constexpr const _Ty &() _Right
Definition: algorithm:3723
static _Ty _Ctraits< float >::sin ( _Ty  _Left)
inlinestatic
562  { // return sin(_Left)
563  return (_CSTD sinf(_Left));
564  }
constexpr const _Ty &() _Left
Definition: algorithm:3722
#define _CSTD
Definition: yvals.h:570
_Check_return_ __inline float __CRTDECL sinf(_In_ float _X)
Definition: corecrt_math.h:747
static _Ty _Ctraits< float >::sqrt ( _Ty  _Left)
inlinestatic
567  { // return sqrt(_Left)
568  return (_CSTD sqrtf(_Left));
569  }
constexpr const _Ty &() _Left
Definition: algorithm:3722
_Check_return_ __inline float __CRTDECL sqrtf(_In_ float _X)
Definition: corecrt_math.h:757
#define _CSTD
Definition: yvals.h:570
static _Ty _Ctraits< float >::tan ( _Ty  _Left)
inlinestatic
572  { // return tan(_Left)
573  return (_CSTD tanf(_Left));
574  }
constexpr const _Ty &() _Left
Definition: algorithm:3722
_Check_return_ __inline float __CRTDECL tanf(_In_ float _X)
Definition: corecrt_math.h:762
#define _CSTD
Definition: yvals.h:570

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