|
@@ -26,7 +26,26 @@
|
|
|
#include "dml_common_defs.h"
|
|
|
#include "../calcs/dcn_calc_math.h"
|
|
|
|
|
|
-#include "dml_inline_defs.h"
|
|
|
+double dml_min(double a, double b)
|
|
|
+{
|
|
|
+ return (double) dcn_bw_min2(a, b);
|
|
|
+}
|
|
|
+
|
|
|
+double dml_max(double a, double b)
|
|
|
+{
|
|
|
+ return (double) dcn_bw_max2(a, b);
|
|
|
+}
|
|
|
+
|
|
|
+double dml_ceil(double a)
|
|
|
+{
|
|
|
+ return (double) dcn_bw_ceil2(a, 1);
|
|
|
+}
|
|
|
+
|
|
|
+double dml_floor(double a)
|
|
|
+{
|
|
|
+ return (double) dcn_bw_floor2(a, 1);
|
|
|
+}
|
|
|
+
|
|
|
double dml_round(double a)
|
|
|
{
|
|
|
double round_pt = 0.5;
|
|
@@ -39,6 +58,16 @@ double dml_round(double a)
|
|
|
return floor;
|
|
|
}
|
|
|
|
|
|
+int dml_log2(double x)
|
|
|
+{
|
|
|
+ return dml_round((double)dcn_bw_log(x, 2));
|
|
|
+}
|
|
|
+
|
|
|
+double dml_pow(double a, int exp)
|
|
|
+{
|
|
|
+ return (double) dcn_bw_pow(a, exp);
|
|
|
+}
|
|
|
+
|
|
|
unsigned int dml_round_to_multiple(
|
|
|
unsigned int num,
|
|
|
unsigned int multiple,
|
|
@@ -60,6 +89,16 @@ unsigned int dml_round_to_multiple(
|
|
|
return (num - remainder);
|
|
|
}
|
|
|
|
|
|
+double dml_fmod(double f, int val)
|
|
|
+{
|
|
|
+ return (double) dcn_bw_mod(f, val);
|
|
|
+}
|
|
|
+
|
|
|
+double dml_ceil_2(double f)
|
|
|
+{
|
|
|
+ return (double) dcn_bw_ceil2(f, 2);
|
|
|
+}
|
|
|
+
|
|
|
bool dml_util_is_420(enum source_format_class sorce_format)
|
|
|
{
|
|
|
bool val = false;
|
|
@@ -92,3 +131,18 @@ bool dml_util_is_420(enum source_format_class sorce_format)
|
|
|
|
|
|
return val;
|
|
|
}
|
|
|
+
|
|
|
+double dml_ceil_ex(double x, double granularity)
|
|
|
+{
|
|
|
+ return (double) dcn_bw_ceil2(x, granularity);
|
|
|
+}
|
|
|
+
|
|
|
+double dml_floor_ex(double x, double granularity)
|
|
|
+{
|
|
|
+ return (double) dcn_bw_floor2(x, granularity);
|
|
|
+}
|
|
|
+
|
|
|
+double dml_log(double x, double base)
|
|
|
+{
|
|
|
+ return (double) dcn_bw_log(x, base);
|
|
|
+}
|