diff options
author | Allan Sandfeld Jensen <allan.jensen@digia.com> | 2014-01-09 12:08:07 +0100 |
---|---|---|
committer | The Qt Project <gerrit-noreply@qt-project.org> | 2014-01-10 09:44:18 +0100 |
commit | db73862302c41a373e299c482a4f2578909a08ed (patch) | |
tree | 26d4ba7828125d85eda3792a6ec4abaa3d534979 /src/gui/image/qimage_conversions.cpp | |
parent | 8bd238041e7222aea1a4ffaf8a170f8c46a72faa (diff) |
Avoid unnecessary double conversion over ARGB32 and ARGB32PM
Currently if the converter_map does not have an entry for how to
do a direct conversion, the image is first converted to ARGB32 and
then to the final format. In most cases the conversion to ARGB32 is
the generic converter which convert over ARGB32PM, which mean the data
is converted to ARGB32PM then to ARGB32, then to ARBG32PM and then to
final format.
This patch uses the generic converter directly everywhere there isn't
an optimized converter declared and it is valid.
Change-Id: Ibad57432ef8c58025e63a032b09f92dad4a559ee
Reviewed-by: Gunnar Sletta <gunnar.sletta@jollamobile.com>
Diffstat (limited to 'src/gui/image/qimage_conversions.cpp')
-rw-r--r-- | src/gui/image/qimage_conversions.cpp | 98 |
1 files changed, 45 insertions, 53 deletions
diff --git a/src/gui/image/qimage_conversions.cpp b/src/gui/image/qimage_conversions.cpp index 9df5646837..c009dcb9e1 100644 --- a/src/gui/image/qimage_conversions.cpp +++ b/src/gui/image/qimage_conversions.cpp @@ -1595,15 +1595,15 @@ Image_Converter qimage_converter_map[QImage::NImageFormats][QImage::NImageFormat 0, mask_alpha_converter, mask_alpha_converter, - convert_generic, - convert_generic, - convert_generic, - convert_generic, - convert_generic, - convert_generic, - convert_generic, - convert_generic, - convert_generic, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, convert_RGB_to_RGBA, convert_RGB_to_RGBA, convert_RGB_to_RGBA @@ -1617,15 +1617,15 @@ Image_Converter qimage_converter_map[QImage::NImageFormats][QImage::NImageFormat mask_alpha_converter, 0, convert_ARGB_to_ARGB_PM, - convert_generic, - convert_generic, - convert_generic, - convert_generic, - convert_generic, - convert_generic, - convert_generic, - convert_generic, - convert_generic, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, convert_ARGB_to_RGBx, convert_ARGB_to_RGBA, convert_ARGB_to_RGBA_PM, @@ -1658,18 +1658,14 @@ Image_Converter qimage_converter_map[QImage::NImageFormats][QImage::NImageFormat 0, 0, 0, - convert_generic, - convert_generic, - convert_generic, 0, 0, 0, 0, -#if defined(QT_QWS_DEPTH_15) && defined(QT_QWS_DEPTH_16) - convert_generic, -#else 0, -#endif + 0, + 0, + 0, 0, 0, 0, @@ -1684,9 +1680,9 @@ Image_Converter qimage_converter_map[QImage::NImageFormats][QImage::NImageFormat 0, 0, 0, - convert_generic, - convert_generic, - convert_generic, + 0, + 0, + 0, 0, 0, 0, @@ -1706,9 +1702,9 @@ Image_Converter qimage_converter_map[QImage::NImageFormats][QImage::NImageFormat 0, 0, 0, - convert_generic, - convert_generic, - convert_generic, + 0, + 0, + 0, 0, 0, 0, @@ -1728,9 +1724,9 @@ Image_Converter qimage_converter_map[QImage::NImageFormats][QImage::NImageFormat 0, 0, 0, - convert_generic, - convert_generic, - convert_generic, + 0, + 0, + 0, 0, 0, 0, @@ -1750,14 +1746,10 @@ Image_Converter qimage_converter_map[QImage::NImageFormats][QImage::NImageFormat 0, 0, 0, - convert_generic, - convert_generic, - convert_generic, -#if defined(QT_QWS_DEPTH_15) && defined(QT_QWS_DEPTH_16) - convert_generic, -#else 0, -#endif + 0, + 0, + 0, 0, 0, 0, @@ -1776,9 +1768,9 @@ Image_Converter qimage_converter_map[QImage::NImageFormats][QImage::NImageFormat 0, 0, 0, - convert_generic, - convert_generic, - convert_generic, + 0, + 0, + 0, 0, 0, 0, @@ -1798,9 +1790,9 @@ Image_Converter qimage_converter_map[QImage::NImageFormats][QImage::NImageFormat 0, 0, 0, - convert_generic, - convert_generic, - convert_generic, + 0, + 0, + 0, 0, 0, 0, @@ -1820,9 +1812,9 @@ Image_Converter qimage_converter_map[QImage::NImageFormats][QImage::NImageFormat 0, 0, 0, - convert_generic, - convert_generic, - convert_generic, + 0, + 0, + 0, 0, 0, 0, @@ -1842,9 +1834,9 @@ Image_Converter qimage_converter_map[QImage::NImageFormats][QImage::NImageFormat 0, 0, 0, - convert_generic, - convert_generic, - convert_generic, + 0, + 0, + 0, 0, 0, 0, |