Re: [E-devel] [PATCH] Add 16bpp and 32bpp Rotation 180 Converter Code

2007-03-02 Thread The Rasterman
On Sat, 17 Feb 2007 20:49:05 +0100 [EMAIL PROTECTED] (Lars Munch) babbled:

 Hi
 
 The attached patch adds 16bpp and 32bpp Rotation 180 Converter Code to
 evas. I did not add the 180 degrees rotation to the software_qtopia
 engine as I cannot test it at the moment.

the qtopia engine is unfortunately a 2nd tier engine - not amazingly well
supported :( so don't worry. patch in cvs. thanks! :)

 Please apply.
 
 -- Lars Munch
 
 
 


-- 
- Codito, ergo sum - I code, therefore I am --
The Rasterman (Carsten Haitzler)[EMAIL PROTECTED]
裸好多
Tokyo, Japan (東京 日本)

-
Take Surveys. Earn Cash. Influence the Future of IT
Join SourceForge.net's Techsay panel and you'll get the chance to share your
opinions on IT  business topics through brief surveys-and earn cash
http://www.techsay.com/default.php?page=join.phpp=sourceforgeCID=DEVDEV
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


[E-devel] [PATCH] Add 16bpp and 32bpp Rotation 180 Converter Code

2007-02-17 Thread Lars Munch
Hi

The attached patch adds 16bpp and 32bpp Rotation 180 Converter Code to
evas. I did not add the 180 degrees rotation to the software_qtopia
engine as I cannot test it at the moment.

Please apply.

-- Lars Munch


Index: configure.in
===
RCS file: /var/cvs/e/e17/libs/evas/configure.in,v
retrieving revision 1.200
diff -p -u -r1.200 configure.in
--- configure.in	10 Feb 2007 17:23:05 -	1.200
+++ configure.in	17 Feb 2007 20:28:48 -
@@ -1602,6 +1602,29 @@ AC_ARG_ENABLE(convert-16-rgb-rot-0, 
 )
 
 ###
+## Convert to 16bpp RGB with rotation of 180
+conv_16_rgb_rot_180=no
+conv_16_rgb_rot_180=yes
+AC_MSG_CHECKING(whether to build 16bpp rotation 180 converter code)
+AC_ARG_ENABLE(convert-16-rgb-rot-180,
+  [  --enable-convert-16-rgb-rot-180 enable 16bpp rotation 180 converter code], [
+  if test x$enableval = xyes ; then
+AC_MSG_RESULT(yes)
+AC_DEFINE(BUILD_CONVERT_16_RGB_ROT180, 1, [16bpp Rotation 180 Converter Code])
+conv_16_rgb_rot_180=yes
+  else
+AC_MSG_RESULT(no)
+conv_16_rgb_rot_180=no
+  fi
+  ], [
+  AC_MSG_RESULT($conv_16_rgb_rot_180)
+  if test x$conv_16_rgb_rot_180 = xyes ; then
+AC_DEFINE(BUILD_CONVERT_16_RGB_ROT180, 1, [16bpp Rotation 180 Converter Code])
+  fi
+  ]
+)
+
+###
 ## Convert to 16bpp RGB with rotation of 270
 conv_16_rgb_rot_270=no
 conv_16_rgb_rot_270=yes
@@ -1809,6 +1832,29 @@ AC_ARG_ENABLE(convert-32-rgb-rot-0, 
 )
 
 ###
+## Convert to 32bpp RGB with rotation of 180
+conv_32_rgb_rot_180=no
+conv_32_rgb_rot_180=yes
+AC_MSG_CHECKING(whether to build 32bpp rotation 180 converter code)
+AC_ARG_ENABLE(convert-32-rgb-rot-180,
+  [  --enable-convert-32-rgb-rot-180 enable 32bpp rotation 180 converter code], [
+  if test x$enableval = xyes ; then
+AC_MSG_RESULT(yes)
+AC_DEFINE(BUILD_CONVERT_32_RGB_ROT180, 1, [32bpp Rotation 180 Converter Support])
+conv_32_rgb_rot_180=yes
+  else
+AC_MSG_RESULT(no)
+conv_32_rgb_rot_180=no
+  fi
+  ], [
+  AC_MSG_RESULT($conv_32_rgb_rot_180)
+  if test x$conv_32_rgb_rot_180 = xyes ; then
+AC_DEFINE(BUILD_CONVERT_32_RGB_ROT180, 1, [32bpp Rotation 180 Converter Support])
+  fi
+  ]
+)
+
+###
 ## Convert to 32bpp RGB with rotation of 270
 conv_32_rgb_rot_270=no
 conv_32_rgb_rot_270=yes
@@ -2078,8 +2124,8 @@ echo   16bpp RGB 565 (444 ipaq): $conv_
 # FIXME: add 8bpp and below rotation
 echo   16bpp Rotation 0: $conv_16_rgb_rot_0
 echo   16bpp Rotation 90...: $conv_16_rgb_rot_90
+echo   16bpp Rotation 180..: $conv_16_rgb_rot_180
 echo   16bpp Rotation 270..: $conv_16_rgb_rot_270
-# FIXME: add 180 rotation
 echo   24bpp RGB 888...: $conv_24_rgb_888
 echo   24bpp BGR 888...: $conv_24_bgr_888
 # FIXME: add 24bpp rotation
@@ -2089,8 +2135,8 @@ echo   32bpp BGR ..: $conv_
 echo   32bpp BGRX .: $conv_32_bgrx_
 echo   32bpp Rotation 0: $conv_32_rgb_rot_0
 echo   32bpp Rotation 90...: $conv_32_rgb_rot_90
+echo   32bpp Rotation 180..: $conv_32_rgb_rot_180
 echo   32bpp Rotation 270..: $conv_32_rgb_rot_270
-# FIXME: add 180 rotation
 echo
 echo 
 echo
Index: src/lib/engines/common/evas_convert_main.c
===
RCS file: /var/cvs/e/e17/libs/evas/src/lib/engines/common/evas_convert_main.c,v
retrieving revision 1.7
diff -p -u -r1.7 evas_convert_main.c
--- src/lib/engines/common/evas_convert_main.c	10 Feb 2007 17:23:06 -	1.7
+++ src/lib/engines/common/evas_convert_main.c	17 Feb 2007 20:28:50 -
@@ -208,6 +208,15 @@ evas_common_convert_func_get(DATA8 *dest
 			 return evas_common_convert_rgba_to_16bpp_rgb_565_dith;
 		}
 #endif
+#ifdef BUILD_CONVERT_16_RGB_ROT180
+		  if (rotation == 180)
+		{
+		   if ((!(w  0x1))  (!((int)dest  0x3)))
+			 return evas_common_convert_rgba2_to_16bpp_rgb_565_dith_rot_180;
+		   else
+			 return evas_common_convert_rgba_to_16bpp_rgb_565_dith_rot_180;
+		}
+#endif
 #ifdef BUILD_CONVERT_16_RGB_ROT270
 		  if (rotation == 270)
 		{
@@ -240,6 +249,15 @@ evas_common_convert_func_get(DATA8 *dest
 			 return evas_common_convert_rgba_to_16bpp_bgr_565_dith;
 		}
 #endif
+#ifdef BUILD_CONVERT_16_RGB_ROT180
+		  if (rotation == 180)
+		{
+		   if ((!(w  0x1))  (!((int)dest  0x3)))
+			 return evas_common_convert_rgba2_to_16bpp_bgr_565_dith_rot_180;
+		   else
+			 return evas_common_convert_rgba_to_16bpp_bgr_565_dith_rot_180;
+		}
+#endif
 #ifdef BUILD_CONVERT_16_RGB_ROT270
 		  if (rotation == 270)
 		{
@@ -272,6 +290,15 @@ evas_common_convert_func_get(DATA8 *dest
  			 return evas_common_convert_rgba_to_16bpp_rgb_555_dith;
 		}