Qt
Internal/Contributor docs for the Qt SDK. Note: These are NOT official API docs; those are found at https://doc.qt.io/
Loading...
Searching...
No Matches
qhaikuutils.cpp
Go to the documentation of this file.
1// Copyright (C) 2015 Klarälvdalens Datakonsult AB, a KDAB Group company, info@kdab.com, author Tobias Koenig <tobias.koenig@kdab.com>
2// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
3
4#include "qhaikuutils.h"
5
6color_space QHaikuUtils::imageFormatToColorSpace(QImage::Format format)
7{
8 color_space colorSpace = B_NO_COLOR_SPACE;
9 switch (format) {
10 case QImage::Format_Invalid:
11 colorSpace = B_NO_COLOR_SPACE;
12 break;
13 case QImage::Format_MonoLSB:
14 colorSpace = B_GRAY1;
15 break;
16 case QImage::Format_Indexed8:
17 colorSpace = B_CMAP8;
18 break;
19 case QImage::Format_RGB32:
20 colorSpace = B_RGB32;
21 break;
22 case QImage::Format_ARGB32:
23 colorSpace = B_RGBA32;
24 break;
25 case QImage::Format_RGB16:
26 colorSpace = B_RGB16;
27 break;
28 case QImage::Format_RGB555:
29 colorSpace = B_RGB15;
30 break;
31 case QImage::Format_RGB888:
32 colorSpace = B_RGB24;
33 break;
34 default:
35 qWarning("Cannot convert image format %d to color space", format);
36 Q_ASSERT(false);
37 break;
38 }
39
40 return colorSpace;
41}
42
44{
45 QImage::Format format = QImage::Format_Invalid;
46 switch (colorSpace) {
47 case B_NO_COLOR_SPACE:
48 format = QImage::Format_Invalid;
49 break;
50 case B_GRAY1:
51 format = QImage::Format_MonoLSB;
52 break;
53 case B_CMAP8:
54 format = QImage::Format_Indexed8;
55 break;
56 case B_RGB32:
57 format = QImage::Format_RGB32;
58 break;
59 case B_RGBA32:
60 format = QImage::Format_ARGB32;
61 break;
62 case B_RGB16:
63 format = QImage::Format_RGB16;
64 break;
65 case B_RGB15:
66 format = QImage::Format_RGB555;
67 break;
68 case B_RGB24:
69 format = QImage::Format_RGB888;
70 break;
71 default:
72 qWarning("Cannot convert color space %d to image format", colorSpace);
73 Q_ASSERT(false);
74 break;
75 }
76
77 return format;
78}
79
80QT_END_NAMESPACE
QImage::Format colorSpaceToImageFormat(color_space colorSpace)