Go to the source code of this file.
Macros | |
#define | AIR(x) (IR(x) & 0x7fffffff) |
Absolute integer representation of a floating-point value. More... | |
#define | CHECK_VALID_FLOAT(x) ASSERT(IsValidFloat(x)); |
#define | FR(x) ((float&)(x)) |
Floating-point representation of an integer value. More... | |
#define | IR(x) ((udword&)(x)) |
Integer representation of a floating-point value. More... | |
#define | IS_NEGATIVE_FLOAT(x) (IR(x) & 0x80000000) |
#define | SIGN_BITMASK 0x80000000 |
#define | SIR(x) ((sdword&)(x)) |
Signed integer representation of a floating-point value. More... | |
Enumerations | |
enum | FPUMode { FPU_FLOOR = 0, FPU_CEIL = 1, FPU_BEST = 2, FPU_FORCE_DWORD = 0x7fffffff } |
Functions | |
inline_ float | ComputeFloatEpsilon () |
This function computes the slowest possible floating-point value (you can also directly use FLT_EPSILON) More... | |
inline_ int | ConvertToSortable (float f) |
inline_ float | FastFabs (float x) |
inline_ float | fepsilon (float f) |
Returns the float ranged espilon value. More... | |
inline_ float | frsqrt (float f) |
Computes 1.0f / sqrtf(x). More... | |
inline_ float | fsat (float f) |
Saturates positive to zero. More... | |
inline_ float | fsqrt (float f) |
TO BE DOCUMENTED. More... | |
inline_ float | InvSqrt (const float &x) |
Computes 1.0f / sqrtf(x). Comes from NVIDIA. More... | |
inline_ bool | IsFloatZero (float x, float epsilon=1e-6f) |
inline_ bool | IsIndeterminate (float value) |
inline_ bool | IsMinusInf (float value) |
inline_ bool | IsNAN (float value) |
Is the float valid ? More... | |
inline_ bool | IsPlusInf (float value) |
inline_ bool | IsValidFloat (float value) |
inline_ float | RSqrt (float number) |
#define AIR | ( | x | ) | (IR(x) & 0x7fffffff) |
#define CHECK_VALID_FLOAT | ( | x | ) | ASSERT(IsValidFloat(x)); |
#define FR | ( | x | ) | ((float&)(x)) |
Floating-point representation of an integer value.
Definition at line 27 of file IceFPU.h.
Referenced by FastFabs().
#define IR | ( | x | ) | ((udword&)(x)) |
Integer representation of a floating-point value.
Definition at line 18 of file IceFPU.h.
Referenced by FastFabs(), IsIndeterminate(), IsMinusInf(), IsNAN(), IsPlusInf(), rpcrawtodigi::EventRecords::mergeRecords(), SeedGeneratorFromRegionHitsEDProducer::produce(), PixelTracksProducer::produce(), and RPCPackingModule::rawData().
#define IS_NEGATIVE_FLOAT | ( | x | ) | (IR(x) & 0x80000000) |
#define SIR | ( | x | ) | ((sdword&)(x)) |
enum FPUMode |
Enumerator | |
---|---|
FPU_FLOOR | |
FPU_CEIL | |
FPU_BEST | |
FPU_FORCE_DWORD |
inline_ float ComputeFloatEpsilon | ( | ) |
This function computes the slowest possible floating-point value (you can also directly use FLT_EPSILON)
Definition at line 166 of file IceFPU.h.
References validate-o2o-wbm::f.
inline_ float FastFabs | ( | float | x | ) |
inline_ float fepsilon | ( | float | f | ) |
inline_ float frsqrt | ( | float | f | ) |
Computes 1.0f / sqrtf(x).
Definition at line 63 of file IceFPU.h.
References x, and detailsBasic3DVector::y.
inline_ float fsat | ( | float | f | ) |
Saturates positive to zero.
Definition at line 57 of file IceFPU.h.
References detailsBasic3DVector::y.
inline_ float fsqrt | ( | float | f | ) |
inline_ float InvSqrt | ( | const float & | x | ) |
Computes 1.0f / sqrtf(x). Comes from NVIDIA.
Definition at line 73 of file IceFPU.h.
References IEEE_1_0, createJobs::tmp, and detailsBasic3DVector::y.
inline_ bool IsFloatZero | ( | float | x, |
float | epsilon = 1e-6f |
||
) |
inline_ bool IsIndeterminate | ( | float | value | ) |
inline_ bool IsMinusInf | ( | float | value | ) |
inline_ bool IsNAN | ( | float | value | ) |
Is the float valid ?
Definition at line 115 of file IceFPU.h.
References IR.
Referenced by IsValidFloat().
inline_ bool IsPlusInf | ( | float | value | ) |
inline_ bool IsValidFloat | ( | float | value | ) |
Definition at line 120 of file IceFPU.h.
References IsIndeterminate(), IsMinusInf(), IsNAN(), and IsPlusInf().
inline_ float RSqrt | ( | float | number | ) |
Computes 1.0f / sqrtf(x). Comes from Quake3. Looks like the first one I had above. See http://www.magic-software.com/3DGEDInvSqrt.html
Definition at line 81 of file IceFPU.h.
References mps_fire::i, contentValuesFiles::number, and detailsBasic3DVector::y.