11 union {
float flt; uint32_t i32; }
conv;
20 union {
float flt; uint32_t i32; }
conv;
26 union {
float flt; uint32_t i32; }
conv;
30 uint16_t
base2 = (
conv.i32&0x007fffff)>>12;
31 uint16_t
base = base2 >> 1;
32 if (((base2 & 1) != 0) && (base < 1023)) base++;
static uint16_t float32to16crop(float x)
Fast implementation, but it crops the number so it biases low.
static CMS_THREAD_SAFE uint16_t offsettable[64]
static HepMC::IO_HEPEVT conv
static float float16to32(uint16_t h)
static CMS_THREAD_SAFE uint16_t basetable[512]
static CMS_THREAD_SAFE uint8_t shifttable[512]
static uint16_t float32to16(float x)
static CMS_THREAD_SAFE uint32_t mantissatable[2048]
The Signals That Services Can Subscribe To This is based on ActivityRegistry h
Helper function to determine trigger accepts.
static unsigned int const shift
static uint16_t float32to16round(float x)
Slower implementation, but it rounds to avoid biases.
static CMS_THREAD_SAFE uint32_t exponenttable[64]