[babl] babl: make use of more direct trc dispatch in base



commit 549efd21d02de5b946a9bc660269484d3b62f12b
Author: Øyvind Kolås <pippin gimp org>
Date:   Wed Aug 30 17:43:10 2017 +0200

    babl: make use of more direct trc dispatch in base

 babl/base/model-gray.c |    8 ++++----
 babl/base/model-rgb.c  |   28 ++++++++++++++--------------
 2 files changed, 18 insertions(+), 18 deletions(-)
---
diff --git a/babl/base/model-gray.c b/babl/base/model-gray.c
index 36eff16..a7ad2a6 100644
--- a/babl/base/model-gray.c
+++ b/babl/base/model-gray.c
@@ -206,7 +206,7 @@ rgb_to_gray_2_2 (Babl  *conversion,
       luminance = red   * RGB_LUMINANCE_RED +    // XXX: should be taken from BablSpace
                   green * RGB_LUMINANCE_GREEN +
                   blue  * RGB_LUMINANCE_BLUE;
-      *(double *) dst[0] = _babl_trc_from_linear (trc, luminance);
+      *(double *) dst[0] = trc->trc.fun_from_linear (trc, luminance);
 
       if (dst_bands == 2)
         *(double *) dst[1] = alpha;
@@ -237,7 +237,7 @@ gray_2_2_to_rgb (Babl *conversion,
       double red, green, blue;
       double alpha;
 
-      luminance = _babl_trc_to_linear (trc, *(double *) src[0]);
+      luminance = trc->trc.fun_to_linear (trc, *(double *) src[0]);
       red       = luminance;
       green     = luminance;
       blue      = luminance;
@@ -485,7 +485,7 @@ rgba2gray_gamma_2_2_premultiplied (Babl *conversion,
       luminance = red * RGB_LUMINANCE_RED +
                   green * RGB_LUMINANCE_GREEN +
                   blue * RGB_LUMINANCE_BLUE;
-      luma = _babl_trc_from_linear (trc, luminance);
+      luma = trc->trc.fun_from_linear (trc, luminance);
 
       ((double *) dst)[0] = luma * alpha;
       ((double *) dst)[1] = alpha;
@@ -513,7 +513,7 @@ gray_gamma_2_2_premultiplied2rgba (Babl *conversion,
       double luminance;
 
       luma      = luma / alpha;
-      luminance = _babl_trc_to_linear (trc, luma);
+      luminance = trc->trc.fun_to_linear (trc, luma);
 
       ((double *) dst)[0] = luminance;
       ((double *) dst)[1] = luminance;
diff --git a/babl/base/model-rgb.c b/babl/base/model-rgb.c
index bb660a8..27a080e 100644
--- a/babl/base/model-rgb.c
+++ b/babl/base/model-rgb.c
@@ -201,7 +201,7 @@ g3_gamma_2_2 (Babl  *conversion,
     {
       int band;
       for (band = 0; band < 3; band++)
-        *(double *) dst[band] = _babl_trc_from_linear (trc[band], (*(double *) src[band]));
+        *(double *) dst[band] = trc[band]->trc.fun_from_linear (trc[band], (*(double *) src[band]));
       for (; band < dst_bands; band++)
         *(double *) dst[band] = *(double *) src[band];
 
@@ -231,7 +231,7 @@ g3_inv_gamma_2_2 (Babl  *conversion,
       int band;
       for (band = 0; band < 3; band++)
         {
-          *(double *) dst[band] = _babl_trc_to_linear (trc[band], (*(double *) src[band]));
+          *(double *) dst[band] = trc[band]->trc.fun_to_linear (trc[band], (*(double *) src[band]));
         }
       for (; band < dst_bands; band++)
         {
@@ -327,9 +327,9 @@ rgba2rgba_gamma_2_2_premultiplied (Babl *conversion,
   while (n--)
     {
       double alpha = ((double *) src)[3];
-      ((double *) dst)[0] = _babl_trc_from_linear (trc[0], ((double *) src)[0]) * alpha;
-      ((double *) dst)[1] = _babl_trc_from_linear (trc[1], ((double *) src)[1]) * alpha;
-      ((double *) dst)[2] = _babl_trc_from_linear (trc[2], ((double *) src)[2]) * alpha;
+      ((double *) dst)[0] = trc[0]->trc.fun_from_linear (trc[0], ((double *) src)[0]) * alpha;
+      ((double *) dst)[1] = trc[0]->trc.fun_from_linear (trc[1], ((double *) src)[1]) * alpha;
+      ((double *) dst)[2] = trc[0]->trc.fun_from_linear (trc[2], ((double *) src)[2]) * alpha;
       ((double *) dst)[3] = alpha;
       src                += 4 * sizeof (double);
       dst                += 4 * sizeof (double);
@@ -353,9 +353,9 @@ rgba_gamma_2_2_premultiplied2rgba (Babl *conversion,
       double alpha = ((double *) src)[3];
       if (alpha > BABL_ALPHA_THRESHOLD)
         {
-          ((double *) dst)[0] = _babl_trc_to_linear (trc[0], ((double *) src)[0] / alpha);
-          ((double *) dst)[1] = _babl_trc_to_linear (trc[1], ((double *) src)[1] / alpha);
-          ((double *) dst)[2] = _babl_trc_to_linear (trc[2], ((double *) src)[2] / alpha);
+          ((double *) dst)[0] = trc[0]->trc.fun_to_linear (trc[0], ((double *) src)[0] / alpha);
+          ((double *) dst)[1] = trc[1]->trc.fun_to_linear (trc[1], ((double *) src)[1] / alpha);
+          ((double *) dst)[2] = trc[2]->trc.fun_to_linear (trc[2], ((double *) src)[2] / alpha);
         }
       else
         {
@@ -385,9 +385,9 @@ rgba2rgba_gamma_2_2 (Babl *conversion,
   while (n--)
     {
       double alpha = ((double *) src)[3];
-      ((double *) dst)[0] = _babl_trc_from_linear (trc[0], ((double *) src)[0]);
-      ((double *) dst)[1] = _babl_trc_from_linear (trc[1], ((double *) src)[1]);
-      ((double *) dst)[2] = _babl_trc_from_linear (trc[2], ((double *) src)[2]);
+      ((double *) dst)[0] = trc[0]->trc.fun_from_linear (trc[0], ((double *) src)[0]);
+      ((double *) dst)[1] = trc[1]->trc.fun_from_linear (trc[1], ((double *) src)[1]);
+      ((double *) dst)[2] = trc[2]->trc.fun_from_linear (trc[2], ((double *) src)[2]);
       ((double *) dst)[3] = alpha;
       src                += 4 * sizeof (double);
       dst                += 4 * sizeof (double);
@@ -409,9 +409,9 @@ rgba_gamma_2_22rgba (Babl *conversion,
   while (n--)
     {
       double alpha = ((double *) src)[3];
-      ((double *) dst)[0] = _babl_trc_to_linear (trc[0], ((double *) src)[0]);
-      ((double *) dst)[1] = _babl_trc_to_linear (trc[1], ((double *) src)[1]);
-      ((double *) dst)[2] = _babl_trc_to_linear (trc[2], ((double *) src)[2]);
+      ((double *) dst)[0] = trc[0]->trc.fun_to_linear (trc[0], ((double *) src)[0]);
+      ((double *) dst)[1] = trc[1]->trc.fun_to_linear (trc[1], ((double *) src)[1]);
+      ((double *) dst)[2] = trc[2]->trc.fun_to_linear (trc[2], ((double *) src)[2]);
       ((double *) dst)[3] = alpha;
 
       src += 4 * sizeof (double);


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]