61 #ifndef HIGH_PRECISION 62 #define HIGH_PRECISION 1 75 #define DBL_MIN std::numeric_limits<double>::min() // 2.2250738585072014e-308 79 #define DBL_DIG std::numeric_limits<double>::digits10 // 15 83 #define DBL_MAX std::numeric_limits<double>::max() // 1.7976931348623157e+308 87 #define DBL_EPSILON std::numeric_limits<double>::epsilon() 88 #endif // 2.2204460492503131e-16 91 #define FLT_MIN std::numeric_limits<float>::min() // 1.17549435e-38F 95 #define FLT_DIG std::numeric_limits<float>::digits10 // 6 99 #define FLT_MAX std::numeric_limits<float>::max() // 3.40282347e+38F 103 #define FLT_EPSILON std::numeric_limits<float>::epsilon() 104 #endif // 1.192092896e-07F 107 #define MAXFLOAT std::numeric_limits<float>::max() // 3.40282347e+38F 111 #define INT_MAX std::numeric_limits<int>::max() // 2147483647 115 #define INT_MIN std::numeric_limits<int>::min() // -2147483648 138 #ifndef G4_SQR_DEFINED 139 #define G4_SQR_DEFINED 151 #ifdef G4_ABS_DEFINED 157 inline T std::abs(
const T&
a)
159 return a < 0 ? -
a :
a;
165 return (ad>0) ?
static_cast<int>(ad+.5) :
static_cast<int>(ad-.5);
170 return (ad>0) ?
static_cast<int>(ad) : static_cast<int>(ad-1.);
175 return (ad>0) ?
static_cast<int>(ad+1) : static_cast<int>(ad);
178 #endif // templates_h void G4SwapObj(T *a, T *b)
void G4SwapPtr(T *&a, T *&b)