Qt
Internal/Contributor docs for the Qt SDK. Note: These are NOT official API docs; those are found at https://doc.qt.io/
Toggle main menu visibility
Loading...
Searching...
No Matches
qimage_mips_dspr2.cpp
Go to the documentation of this file.
1
// Copyright (C) 2013 Imagination Technologies Limited, www.imgtec.com
2
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
3
// Qt-Security score:significant reason:default
4
5
#
include
"qimage.h"
6
#
include
<
private
/
qimage_p
.
h
>
7
8
QT_BEGIN_NAMESPACE
9
10
// Defined in qimage_mips_dspr2_asm.S
11
//
12
extern
"C"
void
premultiply_argb_inplace_mips_asm
(
void
*,
unsigned
,
unsigned
,
int
);
13
14
bool
convert_ARGB_to_ARGB_PM_inplace_mips_dspr2
(QImageData *data,
Qt
::
ImageConversionFlags
)
15
{
16
Q_ASSERT(data->format == QImage::Format_ARGB32);
17
18
if
(!data->width || !data->height)
19
return
true
;
20
21
Q_ASSERT((data->bytes_per_line - (data->width << 2)) >= 0);
22
23
premultiply_argb_inplace_mips_asm(data->data,
24
data->height,
25
data->width,
26
data->bytes_per_line - (data->width << 2));
27
28
data->format = QImage::Format_ARGB32_Premultiplied;
29
return
true
;
30
}
31
32
extern
"C"
void
qt_convert_rgb888_to_rgb32_mips_dspr2_asm
(uint *dst,
const
uchar *src,
int
len);
33
34
void
convert_RGB888_to_RGB32_mips_dspr2
(QImageData *dest,
const
QImageData *src,
Qt
::
ImageConversionFlags
)
35
{
36
Q_ASSERT(src->format == QImage::Format_RGB888);
37
Q_ASSERT(dest->format == QImage::Format_RGB32 || dest->format == QImage::Format_ARGB32 || dest->format == QImage::Format_ARGB32_Premultiplied);
38
Q_ASSERT(src->width == dest->width);
39
Q_ASSERT(src->height == dest->height);
40
41
const
uchar *src_data = (
const
uchar*) src->data;
42
quint32 *dest_data = (quint32*) dest->data;
43
44
for
(
int
i = 0; i < src->height; ++i) {
45
qt_convert_rgb888_to_rgb32_mips_dspr2_asm(dest_data, src_data, src->width);
46
src_data += src->bytes_per_line;
47
dest_data = (quint32*) ((uchar*) dest_data + dest->bytes_per_line);
48
}
49
}
50
51
QT_END_NAMESPACE
QT_BEGIN_NAMESPACE
Combined button and popup list for selecting options.
Definition
qsequentialanimationgroup.cpp:47
premultiply_argb_inplace_mips_asm
QT_BEGIN_NAMESPACE void premultiply_argb_inplace_mips_asm(void *, unsigned, unsigned, int)
convert_RGB888_to_RGB32_mips_dspr2
void convert_RGB888_to_RGB32_mips_dspr2(QImageData *dest, const QImageData *src, Qt::ImageConversionFlags)
Definition
qimage_mips_dspr2.cpp:34
qt_convert_rgb888_to_rgb32_mips_dspr2_asm
void qt_convert_rgb888_to_rgb32_mips_dspr2_asm(uint *dst, const uchar *src, int len)
convert_ARGB_to_ARGB_PM_inplace_mips_dspr2
bool convert_ARGB_to_ARGB_PM_inplace_mips_dspr2(QImageData *data, Qt::ImageConversionFlags)
Definition
qimage_mips_dspr2.cpp:14
qtbase
src
gui
image
qimage_mips_dspr2.cpp
Generated on
for Qt by
1.18.0