#include <libminifloat.h>
Definition at line 7 of file libminifloat.h.
MiniFloatConverter::MiniFloatConverter |
( |
| ) |
|
static float MiniFloatConverter::denorm_min |
( |
| ) |
|
|
inlinestatic |
Definition at line 87 of file libminifloat.h.
References conv.
88 union {
float flt; uint32_t i32; }
conv;
89 conv.i32 = 0x33800000;
static HepMC::IO_HEPEVT conv
void MiniFloatConverter::filltables |
( |
| ) |
|
|
staticprivate |
static float MiniFloatConverter::float16to32 |
( |
uint16_t |
h | ) |
|
|
inlinestatic |
static uint16_t MiniFloatConverter::float32to16 |
( |
float |
x | ) |
|
|
inlinestatic |
static uint16_t MiniFloatConverter::float32to16crop |
( |
float |
x | ) |
|
|
inlinestatic |
Fast implementation, but it crops the number so it biases low.
Definition at line 19 of file libminifloat.h.
References basetable, conv, shifttable, and x.
20 union {
float flt; uint32_t i32; }
conv;
static HepMC::IO_HEPEVT conv
static uint16_t basetable[512]
static uint8_t shifttable[512]
static uint16_t MiniFloatConverter::float32to16round |
( |
float |
x | ) |
|
|
inlinestatic |
static bool MiniFloatConverter::isdenorm |
( |
uint16_t |
h | ) |
|
|
inlinestatic |
Definition at line 93 of file libminifloat.h.
95 return ((
h >> 10) & 0x1f) == 0 && (
h & 0x3ff) != 0;
static float MiniFloatConverter::max |
( |
| ) |
|
|
inlinestatic |
Definition at line 57 of file libminifloat.h.
References conv.
58 union {
float flt; uint32_t i32; }
conv;
59 conv.i32 = 0x477fe000;
static HepMC::IO_HEPEVT conv
static float MiniFloatConverter::max32RoundedToMax16 |
( |
| ) |
|
|
inlinestatic |
Definition at line 64 of file libminifloat.h.
References conv.
65 union {
float flt; uint32_t i32; }
conv;
68 conv.i32 = (0x8f<<23) - 1;
static HepMC::IO_HEPEVT conv
static float MiniFloatConverter::min |
( |
| ) |
|
|
inlinestatic |
Definition at line 72 of file libminifloat.h.
References conv.
73 union {
float flt; uint32_t i32; }
conv;
74 conv.i32 = 0x38800000;
static HepMC::IO_HEPEVT conv
static float MiniFloatConverter::min32RoundedToMin16 |
( |
| ) |
|
|
inlinestatic |
Definition at line 79 of file libminifloat.h.
References conv.
80 union {
float flt; uint32_t i32; }
conv;
83 conv.i32 = (0x71<<23);
static HepMC::IO_HEPEVT conv
template<int bits>
static float MiniFloatConverter::reduceMantissaToNbits |
( |
const float & |
f | ) |
|
|
inlinestatic |
Definition at line 39 of file libminifloat.h.
References bits, constexpr, conv, f, and RecoTauDiscriminantConfiguration::mask.
Referenced by CompressionElement::pack().
41 static_assert(
bits <= 23,
"max mantissa size is 23 bits");
43 union {
float flt; uint32_t i32; }
conv;
static HepMC::IO_HEPEVT conv
How EventSelector::AcceptEvent() decides whether to accept an event for output otherwise it is excluding the probing of A single or multiple positive and the trigger will pass if any such matching triggers are PASS or EXCEPTION[A criterion thatmatches no triggers at all is detected and causes a throw.] A single negative with an expectation of appropriate bit checking in the decision bits
static float MiniFloatConverter::reduceMantissaToNbits |
( |
const float & |
f, |
|
|
int |
bits |
|
) |
| |
|
inlinestatic |
Definition at line 48 of file libminifloat.h.
References bits, conv, f, and RecoTauDiscriminantConfiguration::mask.
51 union {
float flt; uint32_t i32; }
conv;
static HepMC::IO_HEPEVT conv
How EventSelector::AcceptEvent() decides whether to accept an event for output otherwise it is excluding the probing of A single or multiple positive and the trigger will pass if any such matching triggers are PASS or EXCEPTION[A criterion thatmatches no triggers at all is detected and causes a throw.] A single negative with an expectation of appropriate bit checking in the decision bits
uint16_t MiniFloatConverter::basetable |
|
staticprivate |
uint32_t MiniFloatConverter::exponenttable |
|
staticprivate |
uint32_t MiniFloatConverter::mantissatable |
|
staticprivate |
uint16_t MiniFloatConverter::offsettable |
|
staticprivate |
uint8_t MiniFloatConverter::shifttable |
|
staticprivate |