qpixelformat.cpp

Absolute File Name:/home/qt/qt5_coco/qt5/qtbase/src/gui/kernel/qpixelformat.cpp
Source codeSwitch to Preprocessed file
LineSourceCount
1/****************************************************************************-
2**-
3** Copyright (C) 2015 The Qt Company Ltd.-
4** Contact: http://www.qt.io/licensing/-
5**-
6** This file is part of the QtGui module of the Qt Toolkit.-
7**-
8** $QT_BEGIN_LICENSE:LGPL21$-
9** Commercial License Usage-
10** Licensees holding valid commercial Qt licenses may use this file in-
11** accordance with the commercial license agreement provided with the-
12** Software or, alternatively, in accordance with the terms contained in-
13** a written agreement between you and The Qt Company. For licensing terms-
14** and conditions see http://www.qt.io/terms-conditions. For further-
15** information use the contact form at http://www.qt.io/contact-us.-
16**-
17** GNU Lesser General Public License Usage-
18** Alternatively, this file may be used under the terms of the GNU Lesser-
19** General Public License version 2.1 or version 3 as published by the Free-
20** Software Foundation and appearing in the file LICENSE.LGPLv21 and-
21** LICENSE.LGPLv3 included in the packaging of this file. Please review the-
22** following information to ensure the GNU Lesser General Public License-
23** requirements will be met: https://www.gnu.org/licenses/lgpl.html and-
24** http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.-
25**-
26** As a special exception, The Qt Company gives you certain additional-
27** rights. These rights are described in The Qt Company LGPL Exception-
28** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.-
29**-
30** $QT_END_LICENSE$-
31**-
32****************************************************************************/-
33-
34#include "qpixelformat.h"-
35-
36QT_BEGIN_NAMESPACE-
37-
38/*!-
39 \class QPixelFormat-
40 \inmodule QtGui-
41 \since 5.4-
42 \brief QPixelFormat is a class for describing different pixel-
43 layouts in graphics buffers-
44-
45 In Qt there is a often a need to represent the layout of the pixels in a-
46 graphics buffer. Internally QPixelFormat stores everything in a 64 bit-
47 datastructure. This gives performance but also some limitations.-
48-
49 QPixelFormat can describe 5 color channels and 1 alpha channel, each can use-
50 6 bits to describe the size of the color channel.-
51-
52 The position of the alpha channel is described with a separate enum. This is-
53 to make it possible to describe QImage formats like ARGB32, and also-
54 describe typical OpenGL formats like RBGA8888.-
55-
56 How pixels are suppose to be read is determined by the TypeInterpretation-
57 enum. It describes if color values are suppose to be read byte per byte,-
58 or if a pixel is suppose to be read as a complete int and then masked.-
59 \sa TypeInterpretation-
60-
61 There is no support for describing YUV's macro pixels. Instead a list of YUV-
62 formats has been made. When a QPixelFormat is describing a YUV format, the-
63 bitsPerPixel value has been deduced by the YUV Layout enum. Also, the color-
64 channels should all be set to zero except the fifth color channel that-
65 should store the bitsPerPixel value.-
66*/-
67-
68/*!-
69 \enum QPixelFormat::ColorModel-
70-
71 This enum type is used to describe the color model of the pixelformat.-
72 Alpha was added in 5.5.-
73-
74 \value RGB The color model is RGB.-
75-
76 \value BGR This is logically the opposite endian version of RGB. However,-
77 for ease of use it has its own model.-
78-
79 \value Indexed The color model uses a color palette.-
80-
81 \value Grayscale The color model is Grayscale.-
82-
83 \value CMYK The color model is CMYK.-
84-
85 \value HSL The color model is HSL.-
86-
87 \value HSV The color model is HSV.-
88-
89 \value YUV The color model is YUV.-
90-
91 \value Alpha There is no color model, only alpha is used.-
92*/-
93-
94/*!-
95 \enum QPixelFormat::AlphaUsage-
96-
97 This enum describes if the alpha channel is used or not. Sometimes the-
98 pixelformat will have a size for the alpha channel, but the pixel format-
99 does actually not use the alpha channel. For example RGB32 is such a-
100 format. The RGB channels are 8 bits each, and there is no alpha channel.-
101 But the complete size for each pixel is 32. Therefore the alpha channel size-
102 is 8, but the alpha channel is ignored. Its important to note that in such-
103 situations the position of the alpha channel is significant.-
104-
105 \value IgnoresAlpha The alpha channel is not used.-
106-
107 \value UsesAlpha The alpha channel is used.-
108*/-
109-
110/*!-
111 \enum QPixelFormat::AlphaPosition-
112-
113 This enum type is used to describe the alpha channels position relative to the-
114 color channels.-
115-
116 \value AtBeginning The alpha channel will be put in front of the color-
117 channels . E.g. ARGB.-
118-
119 \value AtEnd The alpha channel will be put in the back of the color-
120 channels. E.g. RGBA.-
121*/-
122-
123/*!-
124 \enum QPixelFormat::AlphaPremultiplied-
125-
126 This enum type describes the boolean state if the alpha channel is multiplied-
127 into the color channels or not.-
128-
129 \value NotPremultiplied The alpha channel is not multiplied into the color channels.-
130-
131 \value Premultiplied The alpha channel is multiplied into the color channels.-
132*/-
133-
134/*!-
135 \enum QPixelFormat::TypeInterpretation-
136-
137 This enum describes how each pixel is interpreted. If a pixel is read as a-
138 full 32 bit unsigned integer and then each channel is masked out, or if-
139 each byte is read as unsigned char values. Typically QImage formats-
140 interpret one pixel as an unsigned integer and then the color channels are-
141 masked out. OpenGL on the other hand typically interpreted pixels "one byte-
142 after the other", Ie. unsigned byte.-
143-
144 QImage also have the format Format_RGBA8888 (and its derivatives), where-
145 the pixels are interpreted as unsigned bytes. OpenGL has extensions that makes it-
146 possible to upload pixel buffers in an unsigned integer format.-
147-
148 \image qpixelformat-argb32buffer.png An unsigned integer ARGB32 pixel.-
149-
150 The image above shows a ARGB pixel in memory read as an unsigned integer.-
151 However, if this pixel was read byte for byte on a little endian system the-
152 first byte would be the byte containing the B-channel. The next byte would-
153 be the G-channel, then the R-channel and finally the A-channel. This shows-
154 that on little endian systems, how each pixel is interpreted is significant-
155 for integer formats. This is not the case on big endian systems.-
156-
157 \value UnsignedInteger-
158 \value UnsignedShort-
159 \value UnsignedByte-
160 \value FloatingPoint-
161*/-
162-
163/*!-
164 \enum QPixelFormat::ByteOrder-
165-
166 This enum describes the ByteOrder of the pixel format. This enum is mostly-
167 ignored but have some use cases for YUV formats. BGR formats have their own-
168 color model, and should not be described by using the opposite endianness-
169 on an RGB format.-
170-
171 \value LittleEndian The byte order is little endian.-
172 \value BigEndian The byte order is big endian.-
173 \value CurrentSystemEndian This enum will not be stored, but is converted in-
174 the constructor to the endian enum that matches-
175 the enum of the current system.-
176-
177*/-
178-
179/*!-
180 \enum QPixelFormat::YUVLayout-
181-
182 YUV is not represented by describing the size of the color channels. This is-
183 because YUV often use macro pixels, making the concept of sperate color channels-
184 invalid. Instead the different YUV layouts are described with this enum.-
185-
186 \value YUV444-
187 \value YUV422-
188 \value YUV411-
189 \value YUV420P-
190 \value YUV420SP-
191 \value YV12-
192 \value UYVY-
193 \value YUYV-
194 \value NV12-
195 \value NV21-
196 \value IMC1-
197 \value IMC2-
198 \value IMC3-
199 \value IMC4-
200 \value Y8-
201 \value Y16-
202*/-
203-
204/*!-
205 \fn QPixelFormat::QPixelFormat()-
206-
207 Creates a null pixelformat. This format maps to QImage::Format_Invalid.-
208*/-
209-
210/*!-
211 \fn QPixelFormat::QPixelFormat(ColorModel colorModel,-
212 uchar firstSize,-
213 uchar secondSize,-
214 uchar thirdSize,-
215 uchar fourthSize,-
216 uchar fifthSize,-
217 uchar alphaSize,-
218 AlphaUsage alphaUsage,-
219 AlphaPosition alphaPosition,-
220 AlphaPremultiplied premultiplied,-
221 TypeInterpretation typeInterpretation,-
222 ByteOrder byteOrder = CurrentSystemEndian,-
223 uchar subEnum = 0)-
224-
225 Creates a QPixelFormat which assigns its data to the attributes.-
226 \a colorModel will be put into a buffer which is 4 bits long.-
227-
228 \a firstSize \a secondSize \a thirdSize \a fourthSize \a fifthSize \a-
229 alphaSize are all meant to represent the size of a channel. The channels will-
230 be used for different uses dependent on the \a colorModel. For RGB the-
231 firstSize will represent the Red channel. On CMYK it will represent the-
232 value of the Cyan channel.-
233-
234 \a alphaUsage represents if the alpha channel is used or not.-
235-
236 \a alphaPosition is the position of the alpha channel.-
237-
238 \a premultiplied represents if the alpha channel is already multiplied with-
239 the color channels.-
240-
241 \a typeInterpretation is how the pixel is interpreted.-
242-
243 \a byteOrder represents the endianness of the pixelformat. This defaults to-
244 CurrentSystemEndian.-
245-
246 \a subEnum is used for colorModels that have to store some extra-
247 information with supplying an extra enum. This is used by YUV to store the-
248 YUV type The default value is 0.-
249*/-
250-
251/*!-
252 \fn QPixelFormat qPixelFormatRgba(uchar redSize,-
253 uchar greenSize,-
254 uchar blueSize,-
255 uchar alphaSize,-
256 QPixelFormat::AlphaUsage alphaUsage,-
257 QPixelFormat::AlphaPosition alphaPosition,-
258 QPixelFormat::AlphaPremultiplied premultiplied = QPixelFormat::NotPremultiplied,-
259 QPixelFormat::TypeInterpretation typeInterpretation = QPixelFormat::UnsignedInteger)-
260 \relates QPixelFormat-
261-
262 Constructor function making an RGB pixelformat. \a redSize \a greenSize \a-
263 blueSize represent the size of each color channel. \a alphaSize describes-
264 the alpha channel size and its position is described with \a alphaPosition.-
265 \a alphaUsage is used to determine if the alpha channel is used or not.-
266 Setting the alpha channel size to 8 and alphaUsage to IgnoresAlpha is how-
267 it is possible to create a 32 bit format where the rgb channels only use 24-
268 bits combined. \a premultiplied \a typeInterpretation are-
269 accessible with accessors with the same name.-
270-
271 \sa QPixelFormat::TypeInterpretation-
272*/-
273-
274/*!-
275 \fn QPixelFormat qPixelFormatGrayscale(uchar channelSize,-
276 QPixelFormat::TypeInterpretation typeInterpretation = QPixelFormat::UnsignedInteger)-
277 \relates QPixelFormat-
278-
279 Constructor function for creating a Grayscale format. Monochrome formats can be-
280 described by passing 1 to \a channelSize. Its also possible to define very-
281 accurate grayscale formats using doubles to describe each pixel by passing 8-
282 as \a channelSize and FloatingPoint as \a typeInterpretation.-
283-
284 \sa QPixelFormat::TypeInterpretation-
285*/-
286-
287/*!-
288 \fn QPixelFormat qPixelFormatAlpha(uchar channelSize,-
289 QPixelFormat::TypeInterpretation typeInterpretation = QPixelFormat::UnsignedInteger)-
290 \relates QPixelFormat-
291 \since 5.5-
292-
293 Constructor function for creating an Alpha format. A mask format can be-
294 described by passing 1 to \a channelSize. Its also possible to define very-
295 accurate alpha formats using doubles to describe each pixel by passing 8-
296 as \a channelSize and FloatingPoint as \a typeInterpretation.-
297-
298 \sa QPixelFormat::TypeInterpretation-
299*/-
300-
301-
302/*!-
303 \fn QPixelFormat qPixelFormatCmyk(uchar channelSize,-
304 uchar alphaSize = 0,-
305 QPixelFormat::AlphaUsage alphaUsage = QPixelFormat::IgnoresAlpha,-
306 QPixelFormat::AlphaPosition alphaPosition = QPixelFormat::AtBeginning,-
307 QPixelFormat::TypeInterpretation typeInterpretation = QPixelFormat::UnsignedInteger)-
308 \relates QPixelFormat-
309-
310 Constructor function for creating CMYK formats. The channel count will be 4 or-
311 5 depending on if \a alphaSize is bigger than zero or not. The CMYK color-
312 channels will all be set to the value of \a channelSize.-
313-
314 \a alphaUsage \a alphaPosition and \a typeInterpretation are all accessible with-
315 the accessors with the same name.-
316-
317 \sa QPixelFormat::TypeInterpretation-
318*/-
319-
320/*!-
321 \fn QPixelFormat qPixelFormatHsl(uchar channelSize,-
322 uchar alphaSize = 0,-
323 QPixelFormat::AlphaUsage alphaUsage = QPixelFormat::IgnoresAlpha,-
324 QPixelFormat::AlphaPosition alphaPosition = QPixelFormat::AtBeginning,-
325 QPixelFormat::TypeInterpretation typeInterpretation = QPixelFormat::FloatingPoint)-
326 \relates QPixelFormat-
327-
328 Constructor function for creating HSL formats. The channel count will be 3 or 4-
329 depending on if \a alphaSize is bigger than 0.-
330-
331 \a channelSize will set the hueSize saturationSize and lightnessSize to the same value.-
332-
333 \a alphaUsage \a alphaPosition and \a typeInterpretation are all accessible with-
334 the accessors with the same name.-
335*/-
336-
337/*!-
338 \fn QPixelFormat qPixelFormatHsv(uchar channelSize,-
339 uchar alphaSize = 0,-
340 QPixelFormat::AlphaUsage alphaUsage = QPixelFormat::IgnoresAlpha,-
341 QPixelFormat::AlphaPosition alphaPosition = QPixelFormat::AtBeginning,-
342 QPixelFormat::TypeInterpretation typeInterpretation = QPixelFormat::FloatingPoint)-
343 \relates QPixelFormat-
344-
345 Constructor function for creating HSV formats. The channel count will be 3 or 4-
346 depending on if \a alphaSize is bigger than 0.-
347-
348 \a channelSize will set the hueSize saturationSize and brightnessSize to the same value.-
349-
350 \a alphaUsage \a alphaPosition and \a typeInterpretation are all accessible with-
351 the accessors with the same name.-
352*/-
353-
354/*!-
355 \fn QPixelFormat qPixelFormatYuv(QPixelFormat::YUVLayout yuvLayout,-
356 uchar alphaSize = 0,-
357 QPixelFormat::AlphaUsage alphaUsage = QPixelFormat::IgnoresAlpha,-
358 QPixelFormat::AlphaPosition alphaPosition = QPixelFormat::AtBeginning,-
359 QPixelFormat::AlphaPremultiplied premultiplied = QPixelFormat::NotPremultiplied,-
360 QPixelFormat::TypeInterpretation typeInterpretation = QPixelFormat::UnsignedByte,-
361 QPixelFormat::ByteOrder byteOrder = QPixelFormat::LittleEndian)-
362 \relates QPixelFormat-
363-
364 Constructor function for creating a QPixelFormat describing a YUV format with-
365 \a yuvLayout. \a alphaSize describes the size of a potential alpha channel-
366 and is position is described with \a alphaPosition. The "first" "second" ..-
367 "fifth" channels are all set to 0. \a alphaUsage \a premultiplied \a-
368 typeInterpretation and \a byteOrder will work as with other formats.-
369*/-
370-
371/*!-
372 \fn ColorModel QPixelFormat::colorModel() const-
373-
374 Accessor function for getting the colorModel.-
375*/-
376-
377/*!-
378 \fn uchar QPixelFormat::channelCount() const-
379-
380 Accessor function for getting the channelCount. Channel Count is deduced-
381 by color channels with a size > 0 and if the size of the alpha channel is > 0.-
382*/-
383-
384/*!-
385 \fn uchar QPixelFormat::redSize() const-
386-
387 Accessor function for the size of the red color channel.-
388*/-
389-
390/*!-
391 \fn uchar QPixelFormat::greenSize() const-
392-
393 Accessor function for the size of the green color channel.-
394*/-
395-
396/*!-
397 \fn uchar QPixelFormat::blueSize() const-
398-
399 Accessor function for the size of the blue color channel.-
400*/-
401-
402/*!-
403 \fn uchar QPixelFormat::cyanSize() const-
404-
405 Accessor function for the cyan color channel.-
406*/-
407-
408/*!-
409 \fn uchar QPixelFormat::magentaSize() const-
410-
411 Accessor function for the megenta color channel.-
412*/-
413-
414/*!-
415 \fn uchar QPixelFormat::yellowSize() const-
416-
417 Accessor function for the yellow color channel.-
418*/-
419-
420/*!-
421 \fn uchar QPixelFormat::blackSize() const-
422-
423 Accessor function for the black/key color channel.-
424*/-
425-
426/*!-
427 \fn uchar QPixelFormat::hueSize() const-
428-
429 Accessor function for the hue channel size.-
430*/-
431-
432/*!-
433 \fn uchar QPixelFormat::saturationSize() const-
434-
435 Accessor function for the saturation channel size.-
436*/-
437-
438/*!-
439 \fn uchar QPixelFormat::lightnessSize() const-
440-
441 Accessor function for the lightness channel size.-
442*/-
443-
444/*!-
445 \fn uchar QPixelFormat::brightnessSize() const-
446-
447 Accessor function for the brightness channel size.-
448*/-
449-
450/*!-
451 \fn uchar QPixelFormat::alphaSize() const-
452-
453 Accessor function for the alpha channel size.-
454*/-
455-
456/*!-
457 \fn uchar QPixelFormat::bitsPerPixel() const-
458-
459 Accessor function for the bits used per pixel. This function returns the-
460 sum of the color channels + the size of the alpha channel.-
461*/-
462-
463/*!-
464 \fn AlphaPremultiplied QPixelFormat::premultiplied() const-
465-
466 Accessor function for the AlphaPremultiplied enum. This indicates if the-
467 alpha channel is multiplied in to the color channels.-
468-
469*/-
470-
471/*!-
472 \fn TypeInterpretation QPixelFormat::typeInterpretation() const-
473-
474 Accessor function for the type representation of a color channel or a pixel.-
475-
476 \sa TypeInterpretation-
477*/-
478-
479/*!-
480 \fn ByteOrder QPixelFormat::byteOrder() const-
481-
482 The byte order is almost always set the the byte order of the current-
483 system. However, it can be useful to describe some YUV formats. This-
484 function should never return QPixelFormat::CurrentSystemEndian as this-
485 value is translated to a endian value in the constructor.-
486*/-
487-
488/*!-
489 \fn AlphaUsage QPixelFormat::alphaUsage() const-
490-
491 Accessor function for alphaUsage.-
492*/-
493-
494/*!-
495 \fn AlphaPosition QPixelFormat::alphaPosition() const-
496-
497 Accessor function for alphaPosition.-
498*/-
499-
500/*!-
501 \fn YUVLayout QPixelFormat::yuvLayout() const-
502-
503 Accessor function for the YUVLayout. It is difficult to describe the color-
504 channels of a YUV pixel format since YUV color model uses macro pixels.-
505 Instead the layout of the pixels are stored as an enum.-
506*/-
507-
508/*!-
509 \fn uchar QPixelFormat::subEnum() const-
510-
511 Accessor for the datapart which contains subEnums-
512 This is the same as the yuvLayout() function.-
513-
514 \sa yuvLayout()-
515 \internal-
516*/-
517-
518Q_STATIC_ASSERT(sizeof(QPixelFormat) == sizeof(quint64));-
519-
520-
521namespace QtPrivate {-
522 QPixelFormat QPixelFormat_createYUV(QPixelFormat::YUVLayout yuvLayout,-
523 uchar alphaSize,-
524 QPixelFormat::AlphaUsage alphaUsage,-
525 QPixelFormat::AlphaPosition alphaPosition,-
526 QPixelFormat::AlphaPremultiplied premultiplied,-
527 QPixelFormat::TypeInterpretation typeInterpretation,-
528 QPixelFormat::ByteOrder byteOrder)-
529 {-
530 uchar bits_per_pixel = 0;-
531 switch (yuvLayout) {-
532 case QPixelFormat::YUV444:
never executed: case QPixelFormat::YUV444:
0
533 bits_per_pixel = 24;-
534 break;
never executed: break;
0
535 case QPixelFormat::YUV422:
never executed: case QPixelFormat::YUV422:
0
536 bits_per_pixel = 16;-
537 break;
never executed: break;
0
538 case QPixelFormat::YUV411:
never executed: case QPixelFormat::YUV411:
0
539 case QPixelFormat::YUV420P:
never executed: case QPixelFormat::YUV420P:
0
540 case QPixelFormat::YUV420SP:
never executed: case QPixelFormat::YUV420SP:
0
541 case QPixelFormat::YV12:
never executed: case QPixelFormat::YV12:
0
542 bits_per_pixel = 12;-
543 break;
never executed: break;
0
544 case QPixelFormat::UYVY:
never executed: case QPixelFormat::UYVY:
0
545 case QPixelFormat::YUYV:
never executed: case QPixelFormat::YUYV:
0
546 bits_per_pixel = 16;-
547 break;
never executed: break;
0
548 case QPixelFormat::NV12:
never executed: case QPixelFormat::NV12:
0
549 case QPixelFormat::NV21:
never executed: case QPixelFormat::NV21:
0
550 bits_per_pixel = 12;-
551 break;
never executed: break;
0
552 case QPixelFormat::IMC1:
never executed: case QPixelFormat::IMC1:
0
553 case QPixelFormat::IMC2:
never executed: case QPixelFormat::IMC2:
0
554 case QPixelFormat::IMC3:
never executed: case QPixelFormat::IMC3:
0
555 case QPixelFormat::IMC4:
never executed: case QPixelFormat::IMC4:
0
556 bits_per_pixel = 12;-
557 break;
never executed: break;
0
558 case QPixelFormat::Y8:
never executed: case QPixelFormat::Y8:
0
559 bits_per_pixel = 8;-
560 break;
never executed: break;
0
561 case QPixelFormat::Y16:
never executed: case QPixelFormat::Y16:
0
562 bits_per_pixel = 16;-
563 break;
never executed: break;
0
564 }-
565-
566 return QPixelFormat(QPixelFormat::YUV,
never executed: return QPixelFormat(QPixelFormat::YUV, 0, 0, 0, 0, bits_per_pixel, alphaSize, alphaUsage, alphaPosition, premultiplied, typeInterpretation, byteOrder, yuvLayout);
0
567 0, 0, 0, 0,
never executed: return QPixelFormat(QPixelFormat::YUV, 0, 0, 0, 0, bits_per_pixel, alphaSize, alphaUsage, alphaPosition, premultiplied, typeInterpretation, byteOrder, yuvLayout);
0
568 bits_per_pixel,
never executed: return QPixelFormat(QPixelFormat::YUV, 0, 0, 0, 0, bits_per_pixel, alphaSize, alphaUsage, alphaPosition, premultiplied, typeInterpretation, byteOrder, yuvLayout);
0
569 alphaSize,
never executed: return QPixelFormat(QPixelFormat::YUV, 0, 0, 0, 0, bits_per_pixel, alphaSize, alphaUsage, alphaPosition, premultiplied, typeInterpretation, byteOrder, yuvLayout);
0
570 alphaUsage,
never executed: return QPixelFormat(QPixelFormat::YUV, 0, 0, 0, 0, bits_per_pixel, alphaSize, alphaUsage, alphaPosition, premultiplied, typeInterpretation, byteOrder, yuvLayout);
0
571 alphaPosition,
never executed: return QPixelFormat(QPixelFormat::YUV, 0, 0, 0, 0, bits_per_pixel, alphaSize, alphaUsage, alphaPosition, premultiplied, typeInterpretation, byteOrder, yuvLayout);
0
572 premultiplied,
never executed: return QPixelFormat(QPixelFormat::YUV, 0, 0, 0, 0, bits_per_pixel, alphaSize, alphaUsage, alphaPosition, premultiplied, typeInterpretation, byteOrder, yuvLayout);
0
573 typeInterpretation,
never executed: return QPixelFormat(QPixelFormat::YUV, 0, 0, 0, 0, bits_per_pixel, alphaSize, alphaUsage, alphaPosition, premultiplied, typeInterpretation, byteOrder, yuvLayout);
0
574 byteOrder,
never executed: return QPixelFormat(QPixelFormat::YUV, 0, 0, 0, 0, bits_per_pixel, alphaSize, alphaUsage, alphaPosition, premultiplied, typeInterpretation, byteOrder, yuvLayout);
0
575 yuvLayout);
never executed: return QPixelFormat(QPixelFormat::YUV, 0, 0, 0, 0, bits_per_pixel, alphaSize, alphaUsage, alphaPosition, premultiplied, typeInterpretation, byteOrder, yuvLayout);
0
576 }-
577}-
578-
579QT_END_NAMESPACE-
Source codeSwitch to Preprocessed file

Generated by Squish Coco Non-Commercial 4.3.0-BETA-master-30-08-2018-4cb69e9