14 # define INLINE __forceinline
16 # define INLINE inline
19 INLINE uchar EncodeFP8(
unsigned short nVal )
21 if( nVal < 64 )
return (uchar) nVal;
22 if( nVal < 128 )
return (0x40 | (nVal- 64)/2);
23 if( nVal < 256 )
return (0x60 | (nVal- 128)/4);
24 if( nVal < 512 )
return (0x80 | (nVal- 256)/8);
25 if( nVal < 1024 )
return (0xa0 | (nVal- 512)/16);
26 if( nVal < 2048 )
return (0xc0 | (nVal-1024)/32);
27 if( nVal < 4096 )
return (0xe0 | (nVal-2048)/64);
31 INLINE
unsigned short DecodeFP8( uchar nVal )
39 return (b + 32) << (a-1);