summaryrefslogtreecommitdiffstats
path: root/src/gui/image
diff options
context:
space:
mode:
authorAllan Sandfeld Jensen <allan.jensen@qt.io>2020-12-04 11:38:06 +0100
committerAllan Sandfeld Jensen <allan.jensen@qt.io>2020-12-04 19:21:38 +0100
commit2b9a8b8d6973363d35b381bb5ec7e7ceb53cbae4 (patch)
treef71d82679665665bc9ea193f1047b134562d61c1 /src/gui/image
parenta3e5efa8a2f66a0171b8bf3519155c521cf68792 (diff)
Add generic rb swap for RGB64 formats
Will also be needed by half-float formats. Change-Id: Ia735b29b65287c63da5f1b5ec25428562d743800 Reviewed-by: Lars Knoll <lars.knoll@qt.io>
Diffstat (limited to 'src/gui/image')
-rw-r--r--src/gui/image/qimage.cpp31
1 files changed, 1 insertions, 30 deletions
diff --git a/src/gui/image/qimage.cpp b/src/gui/image/qimage.cpp
index 70b958c177..2787be53d0 100644
--- a/src/gui/image/qimage.cpp
+++ b/src/gui/image/qimage.cpp
@@ -3408,25 +3408,9 @@ QImage QImage::rgbSwapped_helper() const
}
}
break;
- case Format_RGBX64:
- case Format_RGBA64:
- case Format_RGBA64_Premultiplied:
- res = QImage(d->width, d->height, d->format);
- QIMAGE_SANITYCHECK_MEMORY(res);
- for (int i = 0; i < d->height; i++) {
- QRgba64 *q = reinterpret_cast<QRgba64 *>(res.scanLine(i));
- const QRgba64 *p = reinterpret_cast<const QRgba64 *>(constScanLine(i));
- const QRgba64 *end = p + d->width;
- while (p < end) {
- QRgba64 c = *p;
- *q = QRgba64::fromRgba64(c.blue(), c.green(), c.red(), c.alpha());
- p++;
- q++;
- }
- }
- break;
default:
res = QImage(d->width, d->height, d->format);
+ QIMAGE_SANITYCHECK_MEMORY(res);
rgbSwapped_generic(d->width, d->height, this, &res, &qPixelLayouts[d->format]);
break;
}
@@ -3520,19 +3504,6 @@ void QImage::rgbSwapped_inplace()
}
}
break;
- case Format_RGBX64:
- case Format_RGBA64:
- case Format_RGBA64_Premultiplied:
- for (int i = 0; i < d->height; i++) {
- QRgba64 *p = reinterpret_cast<QRgba64 *>(scanLine(i));
- QRgba64 *end = p + d->width;
- while (p < end) {
- QRgba64 c = *p;
- *p = QRgba64::fromRgba64(c.blue(), c.green(), c.red(), c.alpha());
- p++;
- }
- }
- break;
default:
rgbSwapped_generic(d->width, d->height, this, this, &qPixelLayouts[d->format]);
break;