29 virtual int serialize(
unsigned char *outbuffer)
const = 0;
31 virtual const char *
getType() = 0;
32 virtual const char *
getMD5() = 0;
47 const int32_t* val = (int32_t*) &
f;
48 int32_t exp = ((*val >> 23) & 255);
58 *(outbuffer++) = (sig << 5) & 0xff;
59 *(outbuffer++) = (sig >> 3) & 0xff;
60 *(outbuffer++) = (sig >> 11) & 0xff;
61 *(outbuffer++) = ((exp << 4) & 0xF0) | ((sig >> 19) & 0x0F);
62 *(outbuffer++) = (exp >> 4) & 0x7F;
67 *(outbuffer - 1) |= 0x80;
85 uint32_t* val = (uint32_t*)
f;
89 *val = ((uint32_t)(*(inbuffer++)) >> 5 & 0x07);
90 *val |= ((uint32_t)(*(inbuffer++)) & 0xff) << 3;
91 *val |= ((uint32_t)(*(inbuffer++)) & 0xff) << 11;
92 *val |= ((uint32_t)(*inbuffer) & 0x0f) << 19;
95 uint32_t exp = ((uint32_t)(*(inbuffer++)) & 0xf0)>>4;
96 exp |= ((uint32_t)(*inbuffer) & 0x7f) << 4;
99 *val |= ((exp) - 1023 + 127) << 23;
103 *val |= ((uint32_t)(*(inbuffer++)) & 0x80) << 24;