freetype-commit
[Top][All Lists]
Advanced

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

[freetype2-demos] master 60ff5cd: * graph/gblany.h: Consolidate for easi


From: Alexei Podtelezhnikov
Subject: [freetype2-demos] master 60ff5cd: * graph/gblany.h: Consolidate for easier editing.
Date: Wed, 13 Jan 2021 16:38:10 -0500 (EST)

branch: master
commit 60ff5cd3442fab0fce90efd18a7567a1496f7fac
Author: Alexei Podtelezhnikov <apodtele@gmail.com>
Commit: Alexei Podtelezhnikov <apodtele@gmail.com>

    * graph/gblany.h: Consolidate for easier editing.
    * graph/gblhbgr.h, graph/gblhrgb.h, graph/gblvbgr.h, graph/gblvrgb.h,
    graph/gblcolor.h, graph/gblbgra.h, graph/gblspans.h: Deleted.
---
 ChangeLog        |   6 +
 graph/gblany.h   | 496 ++++++++++++++++++++++++++++++++++++++++++++++++++++++-
 graph/gblbgra.h  |  75 ---------
 graph/gblcolor.h |  60 -------
 graph/gblhbgr.h  |  79 ---------
 graph/gblhrgb.h  |  79 ---------
 graph/gblspans.h |  43 -----
 graph/gblvbgr.h  |  80 ---------
 graph/gblvrgb.h  |  80 ---------
 9 files changed, 495 insertions(+), 503 deletions(-)

diff --git a/ChangeLog b/ChangeLog
index c5a4d9a..4fc33c0 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,9 @@
+2021-01-13  Alexei Podtelezhnikov  <apodtele@gmail.com>
+
+       * graph/gblany.h: Consolidate for easier editing.
+       * graph/gblhbgr.h, graph/gblhrgb.h, graph/gblvbgr.h, graph/gblvrgb.h,
+       graph/gblcolor.h, graph/gblbgra.h, graph/gblspans.h: Deleted.
+
 2021-01-12  Alexei Podtelezhnikov  <apodtele@gmail.com>
 
        * src/ftmulti.c (main): Fix crash.
diff --git a/graph/gblany.h b/graph/gblany.h
index 78ac970..00b2331 100644
--- a/graph/gblany.h
+++ b/graph/gblany.h
@@ -54,7 +54,48 @@ GCONCAT( _gblender_spans_, GDST_TYPE )( int            y,
 
   GDST_COPY_VAR
 
-#include "gblspans.h"
+  GBLENDER_VARS;
+
+  unsigned char*  dst_origin = surface->origin - y * surface->bitmap.pitch;
+
+  gblender_use_channels( blender, 0 );
+
+  GBLENDER_VARS_SET(blender,color);
+
+  /* make compiler happy */
+  (void)(r);
+  (void)(g);
+  (void)(b);
+
+  for ( ; count--; spans++ )
+  {
+    unsigned char*  dst = dst_origin + spans->x * GDST_INCR;
+    unsigned short  w   = spans->len;
+    int             a   = GBLENDER_SHADE_INDEX( spans->coverage );
+
+    if ( a == GBLENDER_SHADE_COUNT-1 )
+      for ( ; w-- ; dst += GDST_INCR )
+      {
+        GDST_COPY(dst);
+      }
+    else if ( a )
+      for ( ; w-- ; dst += GDST_INCR )
+      {
+        GBlenderPixel  back;
+
+        GDST_READ(dst,back);
+
+        GBLENDER_LOOKUP( blender, back );
+
+#ifdef GBLENDER_STORE_BYTES
+        GDST_STOREB(dst,_gcells,a);
+#else
+        GDST_STOREP(dst,_gcells,a);
+#endif
+      }
+  }
+
+  GBLENDER_CLOSE(blender);
 }
 
 
@@ -69,7 +110,65 @@ GCONCAT( _gblender_blit_gray8_, GDST_TYPE )( GBlenderBlit   
blit,
 
   GDST_COPY_VAR
 
-#include "gblcolor.h"
+  GBLENDER_VARS;
+
+  int                   h        = blit->height;
+  const unsigned char*  src_line = blit->src_line;
+  unsigned char*        dst_line = blit->dst_line;
+
+  gblender_use_channels( blender, 0 );
+
+  GBLENDER_VARS_SET(blender,color);
+
+  /* make compiler happy */
+  (void)(r);
+  (void)(g);
+  (void)(b);
+
+  do
+  {
+    const unsigned char*  src = src_line + (blit->src_x);
+    unsigned char*        dst = dst_line + blit->dst_x*GDST_INCR;
+    int                   w   = blit->width;
+
+    do
+    {
+      int  a = GBLENDER_SHADE_INDEX(src[0]);
+
+      if ( a == 0 )
+      {
+        /* nothing */
+      }
+      else if ( a == GBLENDER_SHADE_COUNT-1 )
+      {
+        GDST_COPY(dst);
+      }
+      else
+      {
+        GBlenderPixel  back;
+
+        GDST_READ(dst,back);
+
+        GBLENDER_LOOKUP( blender, back );
+
+#ifdef GBLENDER_STORE_BYTES
+        GDST_STOREB(dst,_gcells,a);
+#else
+        GDST_STOREP(dst,_gcells,a);
+#endif
+      }
+
+      src += 1;
+      dst += GDST_INCR;
+    }
+    while (--w > 0);
+
+    src_line += blit->src_pitch;
+    dst_line += blit->dst_pitch;
+  }
+  while (--h > 0);
+
+  GBLENDER_CLOSE(blender);
 }
 
 
@@ -84,7 +183,84 @@ GCONCAT( _gblender_blit_hrgb_, GDST_TYPE )( GBlenderBlit   
blit,
 
   GDST_COPY_VAR
 
-#include "gblhrgb.h"
+  GBLENDER_CHANNEL_VARS;
+
+  int                   h        = blit->height;
+  const unsigned char*  src_line = blit->src_line;
+  unsigned char*        dst_line = blit->dst_line;
+
+  gblender_use_channels( blender, 1 );
+
+  GBLENDER_CHANNEL_VARS_SET(blender,r,g,b);
+
+  do
+  {
+    const unsigned char*  src = src_line + blit->src_x*3;
+    unsigned char*        dst = dst_line + blit->dst_x*GDST_INCR;
+    int                   w   = blit->width;
+
+    do
+    {
+      unsigned int  ar = GBLENDER_SHADE_INDEX(src[0]);
+      unsigned int  ag = GBLENDER_SHADE_INDEX(src[1]);
+      unsigned int  ab = GBLENDER_SHADE_INDEX(src[2]);
+      unsigned int  aa = (ar << 16) | (ag << 8) | ab;
+
+      if ( aa == 0 )
+      {
+        /* nothing */
+      }
+      else if ( aa == (((GBLENDER_SHADE_COUNT-1) << 16) |
+                       ((GBLENDER_SHADE_COUNT-1) << 8)  |
+                        (GBLENDER_SHADE_COUNT-1)        ) )
+      {
+        GDST_COPY(dst);
+      }
+      else
+      {
+        GBlenderPixel  back;
+        int            pix_r, pix_g, pix_b;
+
+        GDST_READ(dst,back);
+
+        {
+          unsigned int  back_r = (back >> 16) & 255;
+
+          GBLENDER_LOOKUP_R( blender, back_r );
+
+          pix_r = _grcells[ar];
+        }
+
+        {
+          unsigned int  back_g = (back >> 8) & 255;
+
+          GBLENDER_LOOKUP_G( blender, back_g );
+
+          pix_g = _ggcells[ag];
+        }
+
+        {
+          unsigned int  back_b = (back) & 255;
+
+          GBLENDER_LOOKUP_B( blender, back_b );
+
+          pix_b = _gbcells[ab];
+        }
+
+        GDST_STOREC(dst,pix_r,pix_g,pix_b);
+      }
+
+      src += 3;
+      dst += GDST_INCR;
+    }
+    while (--w > 0);
+
+    src_line += blit->src_pitch;
+    dst_line += blit->dst_pitch;
+  }
+  while (--h > 0);
+
+  GBLENDER_CHANNEL_CLOSE(blender);
 }
 
 
@@ -99,7 +275,84 @@ GCONCAT( _gblender_blit_hbgr_, GDST_TYPE )( GBlenderBlit   
blit,
 
   GDST_COPY_VAR
 
-#include "gblhbgr.h"
+  GBLENDER_CHANNEL_VARS;
+
+  int                   h        = blit->height;
+  const unsigned char*  src_line = blit->src_line;
+  unsigned char*        dst_line = blit->dst_line;
+
+  gblender_use_channels( blender, 1 );
+
+  GBLENDER_CHANNEL_VARS_SET(blender,r,g,b);
+
+  do
+  {
+    const unsigned char*  src = src_line + blit->src_x*3;
+    unsigned char*        dst = dst_line + blit->dst_x*GDST_INCR;
+    int                   w   = blit->width;
+
+    do
+    {
+      unsigned int  ab = GBLENDER_SHADE_INDEX(src[0]);
+      unsigned int  ag = GBLENDER_SHADE_INDEX(src[1]);
+      unsigned int  ar = GBLENDER_SHADE_INDEX(src[2]);
+      unsigned int  aa = (ar << 16) | (ag << 8) | ab;
+
+      if ( aa == 0 )
+      {
+        /* nothing */
+      }
+      else if ( aa == (((GBLENDER_SHADE_COUNT-1) << 16) |
+                       ((GBLENDER_SHADE_COUNT-1) << 8)  |
+                        (GBLENDER_SHADE_COUNT-1)        ) )
+      {
+        GDST_COPY(dst);
+      }
+      else
+      {
+        GBlenderPixel  back;
+        int            pix_r, pix_g, pix_b;
+
+        GDST_READ(dst,back);
+
+        {
+          unsigned int  back_r = (back >> 16) & 255;
+
+          GBLENDER_LOOKUP_R( blender, back_r );
+
+          pix_r = _grcells[ar];
+        }
+
+        {
+          unsigned int  back_g = (back >> 8) & 255;
+
+          GBLENDER_LOOKUP_G( blender, back_g );
+
+          pix_g = _ggcells[ag];
+        }
+
+        {
+          unsigned int  back_b = (back) & 255;
+
+          GBLENDER_LOOKUP_B( blender, back_b );
+
+          pix_b = _gbcells[ab];
+        }
+
+        GDST_STOREC(dst,pix_r,pix_g,pix_b);
+      }
+
+      src += 3;
+      dst += GDST_INCR;
+    }
+    while (--w > 0);
+
+    src_line += blit->src_pitch;
+    dst_line += blit->dst_pitch;
+  }
+  while (--h > 0);
+
+  GBLENDER_CHANNEL_CLOSE(blender);
 }
 
 
@@ -114,7 +367,85 @@ GCONCAT( _gblender_blit_vrgb_, GDST_TYPE )( GBlenderBlit   
blit,
 
   GDST_COPY_VAR
 
-#include "gblvrgb.h"
+  GBLENDER_CHANNEL_VARS;
+
+  int                   h         = blit->height;
+  const unsigned char*  src_line  = blit->src_line;
+  int                   src_pitch = blit->src_pitch;
+  unsigned char*        dst_line  = blit->dst_line;
+
+  gblender_use_channels( blender, 1 );
+
+  GBLENDER_CHANNEL_VARS_SET(blender,r,g,b);
+
+  do
+  {
+    const unsigned char*  src = src_line + blit->src_x;
+    unsigned char*        dst = dst_line + blit->dst_x*GDST_INCR;
+    int                   w   = blit->width;
+
+    do
+    {
+      unsigned int   ar = GBLENDER_SHADE_INDEX(src[0]);
+      unsigned int   ag = GBLENDER_SHADE_INDEX(src[src_pitch]);
+      unsigned int   ab = GBLENDER_SHADE_INDEX(src[src_pitch << 1]);
+      GBlenderPixel  aa = ((GBlenderPixel)ar << 16) | (ag << 8) | ab;
+
+      if ( aa == 0 )
+      {
+        /* nothing */
+      }
+      else if ( aa == (((GBLENDER_SHADE_COUNT-1) << 16) |
+                       ((GBLENDER_SHADE_COUNT-1) << 8)  |
+                        (GBLENDER_SHADE_COUNT-1)        ) )
+      {
+        GDST_COPY(dst);
+      }
+      else
+      {
+        GBlenderPixel  back;
+        int            pix_r, pix_g, pix_b;
+
+        GDST_READ(dst,back);
+
+        {
+          unsigned int  back_r = (back >> 16) & 255;
+
+          GBLENDER_LOOKUP_R( blender, back_r );
+
+          pix_r = _grcells[ar];
+        }
+
+        {
+          unsigned int  back_g = (back >> 8) & 255;
+
+          GBLENDER_LOOKUP_G( blender, back_g );
+
+          pix_g = _ggcells[ag];
+        }
+
+        {
+          unsigned int  back_b = (back) & 255;
+
+          GBLENDER_LOOKUP_B( blender, back_b );
+
+          pix_b = _gbcells[ab];
+        }
+
+        GDST_STOREC(dst,pix_r,pix_g,pix_b);
+      }
+
+      src += 1;
+      dst += GDST_INCR;
+    }
+    while (--w > 0);
+
+    src_line += blit->src_pitch*3;
+    dst_line += blit->dst_pitch;
+  }
+  while (--h > 0);
+
+  GBLENDER_CHANNEL_CLOSE(blender);
 }
 
 
@@ -129,7 +460,85 @@ GCONCAT( _gblender_blit_vbgr_, GDST_TYPE )( GBlenderBlit   
blit,
 
   GDST_COPY_VAR
 
-#include "gblvbgr.h"
+  GBLENDER_CHANNEL_VARS;
+
+  int                   h         = blit->height;
+  const unsigned char*  src_line  = blit->src_line;
+  int                   src_pitch = blit->src_pitch;
+  unsigned char*        dst_line  = blit->dst_line;
+
+  gblender_use_channels( blender, 1 );
+
+  GBLENDER_CHANNEL_VARS_SET(blender,r,g,b);
+
+  do
+  {
+    const unsigned char*  src = src_line + blit->src_x;
+    unsigned char*        dst = dst_line + blit->dst_x*GDST_INCR;
+    int                   w   = blit->width;
+
+    do
+    {
+      unsigned int   ab = GBLENDER_SHADE_INDEX(src[0]);
+      unsigned int   ag = GBLENDER_SHADE_INDEX(src[src_pitch]);
+      unsigned int   ar = GBLENDER_SHADE_INDEX(src[src_pitch << 1]);
+      GBlenderPixel  aa = ((GBlenderPixel)ar << 16) | (ag << 8) | ab;
+
+      if ( aa == 0 )
+      {
+        /* nothing */
+      }
+      else if ( aa == (((GBLENDER_SHADE_COUNT-1) << 16) |
+                       ((GBLENDER_SHADE_COUNT-1) << 8)  |
+                        (GBLENDER_SHADE_COUNT-1)        ) )
+      {
+        GDST_COPY(dst);
+      }
+      else
+      {
+        GBlenderPixel  back;
+        int            pix_r, pix_g, pix_b;
+
+        GDST_READ(dst,back);
+
+        {
+          unsigned int  back_r = (back >> 16) & 255;
+
+          GBLENDER_LOOKUP_R( blender, back_r );
+
+          pix_r = _grcells[ar];
+        }
+
+        {
+          unsigned int  back_g = (back >> 8) & 255;
+
+          GBLENDER_LOOKUP_G( blender, back_g );
+
+          pix_g = _ggcells[ag];
+        }
+
+        {
+          unsigned int  back_b = (back) & 255;
+
+          GBLENDER_LOOKUP_B( blender, back_b );
+
+          pix_b = _gbcells[ab];
+        }
+
+        GDST_STOREC(dst,pix_r,pix_g,pix_b);
+      }
+
+      src += 1;
+      dst += GDST_INCR;
+    }
+    while (--w > 0);
+
+    src_line += blit->src_pitch*3;
+    dst_line += blit->dst_pitch;
+  }
+  while (--h > 0);
+
+  GBLENDER_CHANNEL_CLOSE(blender);
 }
 
 
@@ -139,7 +548,80 @@ GCONCAT( _gblender_blit_bgra_, GDST_TYPE )( GBlenderBlit   
blit,
 {
   (void)color; /* unused */
 
-#include "gblbgra.h"
+  int                   h        = blit->height;
+  const unsigned char*  src_line = blit->src_line;
+  unsigned char*        dst_line = blit->dst_line;
+
+  do
+  {
+    const unsigned char*  src = src_line + blit->src_x * 4;
+    unsigned char*        dst = dst_line + blit->dst_x * GDST_INCR;
+    int                   w   = blit->width;
+
+    do
+    {
+      unsigned int  pix_b = src[0];
+      unsigned int  pix_g = src[1];
+      unsigned int  pix_r = src[2];
+      unsigned int  a = src[3];
+
+
+      if ( a == 0 )
+      {
+        /* nothing */
+      }
+      else if ( a == 255 )
+      {
+        GDST_STOREC(dst,pix_r,pix_g,pix_b);
+      }
+      else
+      {
+        GBlenderPixel  back;
+
+        GDST_READ(dst,back);
+
+        {
+          unsigned int  ba = 255 - a;
+          unsigned int  back_r = (back >> 16) & 255;
+          unsigned int  back_g = (back >> 8) & 255;
+          unsigned int  back_b = (back) & 255;
+
+#if 1     /* premultiplied blending without gamma correction */
+          pix_r = (back_r * ba / 255 + pix_r);
+          pix_g = (back_g * ba / 255 + pix_g);
+          pix_b = (back_b * ba / 255 + pix_b);
+
+#else     /* gamma-corrected blending */
+          const unsigned char*   gamma_ramp_inv = 
blit->blender->gamma_ramp_inv;
+          const unsigned short*  gamma_ramp     = blit->blender->gamma_ramp;
+
+          back_r = gamma_ramp[back_r];
+          back_g = gamma_ramp[back_g];
+          back_b = gamma_ramp[back_b];
+
+          /* premultiplication undone */
+          pix_r = gamma_ramp[pix_r * 255 / a];
+          pix_g = gamma_ramp[pix_g * 255 / a];
+          pix_b = gamma_ramp[pix_b * 255 / a];
+
+          pix_r = gamma_ramp_inv[(back_r * ba + pix_r * a + 127) / 255];
+          pix_g = gamma_ramp_inv[(back_g * ba + pix_g * a + 127) / 255];
+          pix_b = gamma_ramp_inv[(back_b * ba + pix_b * a + 127) / 255];
+#endif
+        }
+
+        GDST_STOREC(dst,pix_r,pix_g,pix_b);
+      }
+
+      src += 4;
+      dst += GDST_INCR;
+
+    } while ( --w > 0 );
+
+    src_line += blit->src_pitch;
+    dst_line += blit->dst_pitch;
+
+  } while ( --h > 0 );
 }
 
 
diff --git a/graph/gblbgra.h b/graph/gblbgra.h
deleted file mode 100644
index 848a57b..0000000
--- a/graph/gblbgra.h
+++ /dev/null
@@ -1,75 +0,0 @@
-
-  int                   h        = blit->height;
-  const unsigned char*  src_line = blit->src_line;
-  unsigned char*        dst_line = blit->dst_line;
-
-  do
-  {
-    const unsigned char*  src = src_line + blit->src_x * 4;
-    unsigned char*        dst = dst_line + blit->dst_x * GDST_INCR;
-    int                   w   = blit->width;
-
-    do
-    {
-      unsigned int  pix_b = src[0];
-      unsigned int  pix_g = src[1];
-      unsigned int  pix_r = src[2];
-      unsigned int  a = src[3];
-
-
-      if ( a == 0 )
-      {
-        /* nothing */
-      }
-      else if ( a == 255 )
-      {
-        GDST_STOREC(dst,pix_r,pix_g,pix_b);
-      }
-      else
-      {
-        GBlenderPixel  back;
-
-        GDST_READ(dst,back);
-
-        {
-          unsigned int  ba = 255 - a;
-          unsigned int  back_r = (back >> 16) & 255;
-          unsigned int  back_g = (back >> 8) & 255;
-          unsigned int  back_b = (back) & 255;
-
-#if 1     /* premultiplied blending without gamma correction */
-          pix_r = (back_r * ba / 255 + pix_r);
-          pix_g = (back_g * ba / 255 + pix_g);
-          pix_b = (back_b * ba / 255 + pix_b);
-
-#else     /* gamma-corrected blending */
-          const unsigned char*   gamma_ramp_inv = 
blit->blender->gamma_ramp_inv;
-          const unsigned short*  gamma_ramp     = blit->blender->gamma_ramp;
-
-          back_r = gamma_ramp[back_r];
-          back_g = gamma_ramp[back_g];
-          back_b = gamma_ramp[back_b];
-
-          /* premultiplication undone */
-          pix_r = gamma_ramp[pix_r * 255 / a];
-          pix_g = gamma_ramp[pix_g * 255 / a];
-          pix_b = gamma_ramp[pix_b * 255 / a];
-
-          pix_r = gamma_ramp_inv[(back_r * ba + pix_r * a + 127) / 255];
-          pix_g = gamma_ramp_inv[(back_g * ba + pix_g * a + 127) / 255];
-          pix_b = gamma_ramp_inv[(back_b * ba + pix_b * a + 127) / 255];
-#endif
-        }
-
-        GDST_STOREC(dst,pix_r,pix_g,pix_b);
-      }
-
-      src += 4;
-      dst += GDST_INCR;
-
-    } while ( --w > 0 );
-
-    src_line += blit->src_pitch;
-    dst_line += blit->dst_pitch;
-
-  } while ( --h > 0 );
diff --git a/graph/gblcolor.h b/graph/gblcolor.h
deleted file mode 100644
index a72dee4..0000000
--- a/graph/gblcolor.h
+++ /dev/null
@@ -1,60 +0,0 @@
-
-  GBLENDER_VARS;
-
-  int                   h        = blit->height;
-  const unsigned char*  src_line = blit->src_line;
-  unsigned char*        dst_line = blit->dst_line;
-
-  gblender_use_channels( blender, 0 );
-
-  GBLENDER_VARS_SET(blender,color);
-
-  /* make compiler happy */
-  (void)(r);
-  (void)(g);
-  (void)(b);
-
-  do
-  {
-    const unsigned char*  src = src_line + (blit->src_x);
-    unsigned char*        dst = dst_line + blit->dst_x*GDST_INCR;
-    int                   w   = blit->width;
-
-    do
-    {
-      int  a = GBLENDER_SHADE_INDEX(src[0]);
-
-      if ( a == 0 )
-      {
-        /* nothing */
-      }
-      else if ( a == GBLENDER_SHADE_COUNT-1 )
-      {
-        GDST_COPY(dst);
-      }
-      else
-      {
-        GBlenderPixel  back;
-
-        GDST_READ(dst,back);
-
-        GBLENDER_LOOKUP( blender, back );
-
-#ifdef GBLENDER_STORE_BYTES
-        GDST_STOREB(dst,_gcells,a);
-#else
-        GDST_STOREP(dst,_gcells,a);
-#endif
-      }
-
-      src += 1;
-      dst += GDST_INCR;
-    }
-    while (--w > 0);
-
-    src_line += blit->src_pitch;
-    dst_line += blit->dst_pitch;
-  }
-  while (--h > 0);
-
-  GBLENDER_CLOSE(blender);
diff --git a/graph/gblhbgr.h b/graph/gblhbgr.h
deleted file mode 100644
index d5de10b..0000000
--- a/graph/gblhbgr.h
+++ /dev/null
@@ -1,79 +0,0 @@
-
-  GBLENDER_CHANNEL_VARS;
-
-  int                   h        = blit->height;
-  const unsigned char*  src_line = blit->src_line;
-  unsigned char*        dst_line = blit->dst_line;
-
-  gblender_use_channels( blender, 1 );
-
-  GBLENDER_CHANNEL_VARS_SET(blender,r,g,b);
-
-  do
-  {
-    const unsigned char*  src = src_line + blit->src_x*3;
-    unsigned char*        dst = dst_line + blit->dst_x*GDST_INCR;
-    int                   w   = blit->width;
-
-    do
-    {
-      unsigned int  ab = GBLENDER_SHADE_INDEX(src[0]);
-      unsigned int  ag = GBLENDER_SHADE_INDEX(src[1]);
-      unsigned int  ar = GBLENDER_SHADE_INDEX(src[2]);
-      unsigned int  aa = (ar << 16) | (ag << 8) | ab;
-
-      if ( aa == 0 )
-      {
-        /* nothing */
-      }
-      else if ( aa == (((GBLENDER_SHADE_COUNT-1) << 16) |
-                       ((GBLENDER_SHADE_COUNT-1) << 8)  |
-                        (GBLENDER_SHADE_COUNT-1)        ) )
-      {
-        GDST_COPY(dst);
-      }
-      else
-      {
-        GBlenderPixel  back;
-        int            pix_r, pix_g, pix_b;
-
-        GDST_READ(dst,back);
-
-        {
-          unsigned int  back_r = (back >> 16) & 255;
-
-          GBLENDER_LOOKUP_R( blender, back_r );
-
-          pix_r = _grcells[ar];
-        }
-
-        {
-          unsigned int  back_g = (back >> 8) & 255;
-
-          GBLENDER_LOOKUP_G( blender, back_g );
-
-          pix_g = _ggcells[ag];
-        }
-
-        {
-          unsigned int  back_b = (back) & 255;
-
-          GBLENDER_LOOKUP_B( blender, back_b );
-
-          pix_b = _gbcells[ab];
-        }
-
-        GDST_STOREC(dst,pix_r,pix_g,pix_b);
-      }
-
-      src += 3;
-      dst += GDST_INCR;
-    }
-    while (--w > 0);
-
-    src_line += blit->src_pitch;
-    dst_line += blit->dst_pitch;
-  }
-  while (--h > 0);
-
-  GBLENDER_CHANNEL_CLOSE(blender);
diff --git a/graph/gblhrgb.h b/graph/gblhrgb.h
deleted file mode 100644
index 4deb724..0000000
--- a/graph/gblhrgb.h
+++ /dev/null
@@ -1,79 +0,0 @@
-
-  GBLENDER_CHANNEL_VARS;
-
-  int                   h        = blit->height;
-  const unsigned char*  src_line = blit->src_line;
-  unsigned char*        dst_line = blit->dst_line;
-
-  gblender_use_channels( blender, 1 );
-
-  GBLENDER_CHANNEL_VARS_SET(blender,r,g,b);
-
-  do
-  {
-    const unsigned char*  src = src_line + blit->src_x*3;
-    unsigned char*        dst = dst_line + blit->dst_x*GDST_INCR;
-    int                   w   = blit->width;
-
-    do
-    {
-      unsigned int  ar = GBLENDER_SHADE_INDEX(src[0]);
-      unsigned int  ag = GBLENDER_SHADE_INDEX(src[1]);
-      unsigned int  ab = GBLENDER_SHADE_INDEX(src[2]);
-      unsigned int  aa = (ar << 16) | (ag << 8) | ab;
-
-      if ( aa == 0 )
-      {
-        /* nothing */
-      }
-      else if ( aa == (((GBLENDER_SHADE_COUNT-1) << 16) |
-                       ((GBLENDER_SHADE_COUNT-1) << 8)  |
-                        (GBLENDER_SHADE_COUNT-1)        ) )
-      {
-        GDST_COPY(dst);
-      }
-      else
-      {
-        GBlenderPixel  back;
-        int            pix_r, pix_g, pix_b;
-
-        GDST_READ(dst,back);
-
-        {
-          unsigned int  back_r = (back >> 16) & 255;
-
-          GBLENDER_LOOKUP_R( blender, back_r );
-
-          pix_r = _grcells[ar];
-        }
-
-        {
-          unsigned int  back_g = (back >> 8) & 255;
-
-          GBLENDER_LOOKUP_G( blender, back_g );
-
-          pix_g = _ggcells[ag];
-        }
-
-        {
-          unsigned int  back_b = (back) & 255;
-
-          GBLENDER_LOOKUP_B( blender, back_b );
-
-          pix_b = _gbcells[ab];
-        }
-
-        GDST_STOREC(dst,pix_r,pix_g,pix_b);
-      }
-
-      src += 3;
-      dst += GDST_INCR;
-    }
-    while (--w > 0);
-
-    src_line += blit->src_pitch;
-    dst_line += blit->dst_pitch;
-  }
-  while (--h > 0);
-
-  GBLENDER_CHANNEL_CLOSE(blender);
diff --git a/graph/gblspans.h b/graph/gblspans.h
deleted file mode 100644
index b9de313..0000000
--- a/graph/gblspans.h
+++ /dev/null
@@ -1,43 +0,0 @@
-
-  GBLENDER_VARS;
-
-  unsigned char*  dst_origin = surface->origin - y * surface->bitmap.pitch;
-
-  gblender_use_channels( blender, 0 );
-
-  GBLENDER_VARS_SET(blender,color);
-
-  /* make compiler happy */
-  (void)(r);
-  (void)(g);
-  (void)(b);
-
-  for ( ; count--; spans++ )
-  {
-    unsigned char*  dst = dst_origin + spans->x * GDST_INCR;
-    unsigned short  w   = spans->len;
-    int             a   = GBLENDER_SHADE_INDEX( spans->coverage );
-
-    if ( a == GBLENDER_SHADE_COUNT-1 )
-      for ( ; w-- ; dst += GDST_INCR )
-      {
-        GDST_COPY(dst);
-      }
-    else if ( a )
-      for ( ; w-- ; dst += GDST_INCR )
-      {
-        GBlenderPixel  back;
-
-        GDST_READ(dst,back);
-
-        GBLENDER_LOOKUP( blender, back );
-
-#ifdef GBLENDER_STORE_BYTES
-        GDST_STOREB(dst,_gcells,a);
-#else
-        GDST_STOREP(dst,_gcells,a);
-#endif
-      }
-  }
-
-  GBLENDER_CLOSE(blender);
diff --git a/graph/gblvbgr.h b/graph/gblvbgr.h
deleted file mode 100644
index 67effae..0000000
--- a/graph/gblvbgr.h
+++ /dev/null
@@ -1,80 +0,0 @@
-
-  GBLENDER_CHANNEL_VARS;
-
-  int                   h         = blit->height;
-  const unsigned char*  src_line  = blit->src_line;
-  int                   src_pitch = blit->src_pitch;
-  unsigned char*        dst_line  = blit->dst_line;
-
-  gblender_use_channels( blender, 1 );
-
-  GBLENDER_CHANNEL_VARS_SET(blender,r,g,b);
-
-  do
-  {
-    const unsigned char*  src = src_line + blit->src_x;
-    unsigned char*        dst = dst_line + blit->dst_x*GDST_INCR;
-    int                   w   = blit->width;
-
-    do
-    {
-      unsigned int   ab = GBLENDER_SHADE_INDEX(src[0]);
-      unsigned int   ag = GBLENDER_SHADE_INDEX(src[src_pitch]);
-      unsigned int   ar = GBLENDER_SHADE_INDEX(src[src_pitch << 1]);
-      GBlenderPixel  aa = ((GBlenderPixel)ar << 16) | (ag << 8) | ab;
-
-      if ( aa == 0 )
-      {
-        /* nothing */
-      }
-      else if ( aa == (((GBLENDER_SHADE_COUNT-1) << 16) |
-                       ((GBLENDER_SHADE_COUNT-1) << 8)  |
-                        (GBLENDER_SHADE_COUNT-1)        ) )
-      {
-        GDST_COPY(dst);
-      }
-      else
-      {
-        GBlenderPixel  back;
-        int            pix_r, pix_g, pix_b;
-
-        GDST_READ(dst,back);
-
-        {
-          unsigned int  back_r = (back >> 16) & 255;
-
-          GBLENDER_LOOKUP_R( blender, back_r );
-
-          pix_r = _grcells[ar];
-        }
-
-        {
-          unsigned int  back_g = (back >> 8) & 255;
-
-          GBLENDER_LOOKUP_G( blender, back_g );
-
-          pix_g = _ggcells[ag];
-        }
-
-        {
-          unsigned int  back_b = (back) & 255;
-
-          GBLENDER_LOOKUP_B( blender, back_b );
-
-          pix_b = _gbcells[ab];
-        }
-
-        GDST_STOREC(dst,pix_r,pix_g,pix_b);
-      }
-
-      src += 1;
-      dst += GDST_INCR;
-    }
-    while (--w > 0);
-
-    src_line += blit->src_pitch*3;
-    dst_line += blit->dst_pitch;
-  }
-  while (--h > 0);
-
-  GBLENDER_CHANNEL_CLOSE(blender);
diff --git a/graph/gblvrgb.h b/graph/gblvrgb.h
deleted file mode 100644
index 6b9edde..0000000
--- a/graph/gblvrgb.h
+++ /dev/null
@@ -1,80 +0,0 @@
-
-  GBLENDER_CHANNEL_VARS;
-
-  int                   h         = blit->height;
-  const unsigned char*  src_line  = blit->src_line;
-  int                   src_pitch = blit->src_pitch;
-  unsigned char*        dst_line  = blit->dst_line;
-
-  gblender_use_channels( blender, 1 );
-
-  GBLENDER_CHANNEL_VARS_SET(blender,r,g,b);
-
-  do
-  {
-    const unsigned char*  src = src_line + blit->src_x;
-    unsigned char*        dst = dst_line + blit->dst_x*GDST_INCR;
-    int                   w   = blit->width;
-
-    do
-    {
-      unsigned int   ar = GBLENDER_SHADE_INDEX(src[0]);
-      unsigned int   ag = GBLENDER_SHADE_INDEX(src[src_pitch]);
-      unsigned int   ab = GBLENDER_SHADE_INDEX(src[src_pitch << 1]);
-      GBlenderPixel  aa = ((GBlenderPixel)ar << 16) | (ag << 8) | ab;
-
-      if ( aa == 0 )
-      {
-        /* nothing */
-      }
-      else if ( aa == (((GBLENDER_SHADE_COUNT-1) << 16) |
-                       ((GBLENDER_SHADE_COUNT-1) << 8)  |
-                        (GBLENDER_SHADE_COUNT-1)        ) )
-      {
-        GDST_COPY(dst);
-      }
-      else
-      {
-        GBlenderPixel  back;
-        int            pix_r, pix_g, pix_b;
-
-        GDST_READ(dst,back);
-
-        {
-          unsigned int  back_r = (back >> 16) & 255;
-
-          GBLENDER_LOOKUP_R( blender, back_r );
-
-          pix_r = _grcells[ar];
-        }
-
-        {
-          unsigned int  back_g = (back >> 8) & 255;
-
-          GBLENDER_LOOKUP_G( blender, back_g );
-
-          pix_g = _ggcells[ag];
-        }
-
-        {
-          unsigned int  back_b = (back) & 255;
-
-          GBLENDER_LOOKUP_B( blender, back_b );
-
-          pix_b = _gbcells[ab];
-        }
-
-        GDST_STOREC(dst,pix_r,pix_g,pix_b);
-      }
-
-      src += 1;
-      dst += GDST_INCR;
-    }
-    while (--w > 0);
-
-    src_line += blit->src_pitch*3;
-    dst_line += blit->dst_pitch;
-  }
-  while (--h > 0);
-
-  GBLENDER_CHANNEL_CLOSE(blender);



reply via email to

[Prev in Thread] Current Thread [Next in Thread]