LArSoft  v09_90_00
Liquid Argon Software toolkit - https://larsoft.org/
art::fp_detail Namespace Reference

Classes

struct  fp_control_t
 

Enumerations

enum  precision_t { precision_t::SINGLE = fpControl_SINGLE_PREC, precision_t::DOUBLE = fpControl_DOUBLE_PREC, precision_t::EXTENDED = fpControl_EXTENDED_PREC }
 

Functions

fpsw_t getFPSW ()
 
fpcw_t getFPCW ()
 
fpcw_t setFPCW (fpcw_t fpcw)
 
fp_control_t getFPControl ()
 
fp_control_t setFPControl (fp_control_t const &fpControl)
 
char const * on_or_off (bool const b)
 

Variables

using fpsw_t = typedef
 
using fpcw_t = typedef
 

Enumeration Type Documentation

Enumerator
SINGLE 
DOUBLE 
EXTENDED 

Definition at line 79 of file fpControl.h.

79  {
80  SINGLE = fpControl_SINGLE_PREC,
81  DOUBLE = fpControl_DOUBLE_PREC,
82  EXTENDED = fpControl_EXTENDED_PREC
83  };

Function Documentation

art::fp_detail::fp_control_t art::fp_detail::getFPControl ( )
inline

Definition at line 130 of file fpControl.h.

References getFPCW().

Referenced by art::FloatingPointControl::FloatingPointControl().

131 {
132  fp_control_t result{getFPCW()
133 #ifdef fpControl_HAVE_MXCSR
134  ,
135  getMXCSR()
136 #endif
137  };
138  return result;
139 }
fpcw_t getFPCW()
Definition: fpControl.cc:28
art::fp_detail::fpcw_t art::fp_detail::getFPCW ( )

Definition at line 28 of file fpControl.cc.

References fpcw_t.

Referenced by getFPControl(), art::FloatingPointControl::getMask(), art::FloatingPointControl::getPrecision(), and setFPCW().

29 {
30  fpcw_t result;
31  fpControl_GETFPCW(result);
32  return result;
33 }
typedef fpcw_t
Definition: fpControl.h:99
art::fp_detail::fpsw_t art::fp_detail::getFPSW ( )

Definition at line 21 of file fpControl.cc.

References fpcw_t, and fpsw_t.

22 {
23  fpsw_t result{static_cast<fpsw_t>(fetestexcept(FE_ALL_EXCEPT))};
24  return result;
25 }
typedef fpsw_t
Definition: fpControl.h:91
char const * art::fp_detail::on_or_off ( bool const  b)
inline

Definition at line 154 of file fpControl.h.

155 {
156  return b ? " on " : " off";
157 }
art::fp_detail::fp_control_t art::fp_detail::setFPControl ( fp_control_t const &  fpControl)
inline

Definition at line 142 of file fpControl.h.

References art::fp_detail::fp_control_t::fpcw, and setFPCW().

Referenced by art::FloatingPointControl::FloatingPointControl(), and art::FloatingPointControl::postEndJob().

143 {
144  fp_control_t result{setFPCW(fpControl.fpcw)
145 #ifdef fpControl_HAVE_MXCSR
146  ,
147  setMXCSR(fpControl.mxcsr)
148 #endif
149  };
150  return result;
151 }
fpcw_t setFPCW(fpcw_t fpcw)
Definition: fpControl.cc:36
art::fp_detail::fpcw_t art::fp_detail::setFPCW ( fpcw_t  fpcw)

Definition at line 36 of file fpControl.cc.

References fpcw_t, and getFPCW().

Referenced by setFPControl().

37 {
38  fpcw_t result = getFPCW();
39  fpControl_SETFPCW(fpcw);
40  return result;
41 }
fpcw_t getFPCW()
Definition: fpControl.cc:28
typedef fpcw_t
Definition: fpControl.h:99

Variable Documentation

using art::fp_detail::fpcw_t = typedef

Definition at line 99 of file fpControl.h.

Referenced by getFPCW(), getFPSW(), and setFPCW().

using art::fp_detail::fpsw_t = typedef

Definition at line 91 of file fpControl.h.

Referenced by getFPSW().