forked from enlightenment/efl
eina: add double_from/to and helper defines in f16p16
This commit is contained in:
parent
4850c4660f
commit
538821f09d
|
@ -60,8 +60,14 @@ static inline unsigned int eina_f32p32_fracc_get(Eina_F32p32 v);
|
|||
EAPI Eina_F32p32 eina_f32p32_cos(Eina_F32p32 a);
|
||||
EAPI Eina_F32p32 eina_f32p32_sin(Eina_F32p32 a);
|
||||
|
||||
|
||||
#define EINA_F16P16_ONE (1 << 16)
|
||||
#define EINA_F16P16_HALF (1 << 15)
|
||||
|
||||
static inline Eina_F16p16 eina_f16p16_int_from(int32_t v);
|
||||
static inline int32_t eina_f16p16_int_to(Eina_F16p16 v);
|
||||
static inline Eina_F16p16 eina_f16p16_double_from(double v);
|
||||
static inline double eina_f16p16_double_to(Eina_F16p16 v);
|
||||
static inline Eina_F16p16 eina_f16p16_float_from(float v);
|
||||
static inline float eina_f16p16_float_to(Eina_F16p16 v);
|
||||
|
||||
|
|
|
@ -80,6 +80,23 @@ eina_f16p16_float_to(Eina_F16p16 v)
|
|||
return r;
|
||||
}
|
||||
|
||||
static inline Eina_F16p16
|
||||
eina_f16p16_double_from(double v)
|
||||
{
|
||||
Eina_F16p16 r;
|
||||
|
||||
r = (Eina_F16p16)(v * 65536.0 + (v < 0 ? -0.5 : 0.5));
|
||||
return r;
|
||||
}
|
||||
|
||||
static inline double
|
||||
eina_f16p16_double_to(Eina_F16p16 v)
|
||||
{
|
||||
double r;
|
||||
|
||||
r = v / 65536.0;
|
||||
return r;
|
||||
}
|
||||
|
||||
|
||||
static inline Eina_F8p24
|
||||
|
|
Loading…
Reference in New Issue