webkit  2cdf99a9e3038c7e01b3c37e8ad903ecbe5eecf1
https://github.com/WebKit/webkit
imageformats.h
Go to the documentation of this file.
1 //
2 // Copyright (c) 2013-2015 The ANGLE Project Authors. All rights reserved.
3 // Use of this source code is governed by a BSD-style license that can be
4 // found in the LICENSE file.
5 //
6 
7 // imageformats.h: Defines image format types with functions for mip generation
8 // and copying.
9 
10 #ifndef IMAGEUTIL_IMAGEFORMATS_H_
11 #define IMAGEUTIL_IMAGEFORMATS_H_
12 
13 #include "common/Color.h"
14 
15 #include <cstdint>
16 
17 namespace angle
18 {
19 
20 // Several structures share functionality for reading, writing or mipmapping but the layout
21 // must match the texture format which the structure represents. If collapsing or typedefing
22 // structs in this header, make sure the functionality and memory layout is exactly the same.
23 
24 struct L8
25 {
27 
28  static void readColor(gl::ColorF *dst, const L8 *src);
29  static void writeColor(L8 *dst, const gl::ColorF *src);
30  static void average(L8 *dst, const L8 *src1, const L8 *src2);
31 };
32 
33 struct R8
34 {
36 
37  static void readColor(gl::ColorF *dst, const R8 *src);
38  static void readColor(gl::ColorUI *dst, const R8 *src);
39  static void writeColor(R8 *dst, const gl::ColorF *src);
40  static void writeColor(R8 *dst, const gl::ColorUI *src);
41  static void average(R8 *dst, const R8 *src1, const R8 *src2);
42 };
43 
44 struct A8
45 {
47 
48  static void readColor(gl::ColorF *dst, const A8 *src);
49  static void writeColor(A8 *dst, const gl::ColorF *src);
50  static void average(A8 *dst, const A8 *src1, const A8 *src2);
51 };
52 
53 struct L8A8
54 {
57 
58  static void readColor(gl::ColorF *dst, const L8A8 *src);
59  static void writeColor(L8A8 *dst, const gl::ColorF *src);
60  static void average(L8A8 *dst, const L8A8 *src1, const L8A8 *src2);
61 };
62 
63 struct A8L8
64 {
67 
68  static void readColor(gl::ColorF *dst, const A8L8 *src);
69  static void writeColor(A8L8 *dst, const gl::ColorF *src);
70  static void average(A8L8 *dst, const A8L8 *src1, const A8L8 *src2);
71 };
72 
73 struct R8G8
74 {
77 
78  static void readColor(gl::ColorF *dst, const R8G8 *src);
79  static void readColor(gl::ColorUI *dst, const R8G8 *src);
80  static void writeColor(R8G8 *dst, const gl::ColorF *src);
81  static void writeColor(R8G8 *dst, const gl::ColorUI *src);
82  static void average(R8G8 *dst, const R8G8 *src1, const R8G8 *src2);
83 };
84 
85 struct R8G8B8
86 {
90 
91  static void readColor(gl::ColorF *dst, const R8G8B8 *src);
92  static void readColor(gl::ColorUI *dst, const R8G8B8 *src);
93  static void writeColor(R8G8B8 *dst, const gl::ColorF *src);
94  static void writeColor(R8G8B8 *dst, const gl::ColorUI *src);
95  static void average(R8G8B8 *dst, const R8G8B8 *src1, const R8G8B8 *src2);
96 };
97 
98 struct B8G8R8
99 {
103 
104  static void readColor(gl::ColorF *dst, const B8G8R8 *src);
105  static void readColor(gl::ColorUI *dst, const B8G8R8 *src);
106  static void writeColor(B8G8R8 *dst, const gl::ColorF *src);
107  static void writeColor(B8G8R8 *dst, const gl::ColorUI *src);
108  static void average(B8G8R8 *dst, const B8G8R8 *src1, const B8G8R8 *src2);
109 };
110 
111 struct R5G6B5
112 {
113  // OpenGL ES 2.0.25 spec Section 3.6.2: "Components are packed with the first component in the
114  // most significant bits of the bitfield, and successive component occupying progressively less
115  // significant locations"
117 
118  static void readColor(gl::ColorF *dst, const R5G6B5 *src);
119  static void writeColor(R5G6B5 *dst, const gl::ColorF *src);
120  static void average(R5G6B5 *dst, const R5G6B5 *src1, const R5G6B5 *src2);
121 };
122 
123 struct B5G6R5
124 {
126 
127  static void readColor(gl::ColorF *dst, const B5G6R5 *src);
128  static void writeColor(B5G6R5 *dst, const gl::ColorF *src);
129  static void average(B5G6R5 *dst, const B5G6R5 *src1, const B5G6R5 *src2);
130 };
131 
132 struct A8R8G8B8
133 {
138 
139  static void readColor(gl::ColorF *dst, const A8R8G8B8 *src);
140  static void readColor(gl::ColorUI *dst, const A8R8G8B8 *src);
141  static void writeColor(A8R8G8B8 *dst, const gl::ColorF *src);
142  static void writeColor(A8R8G8B8 *dst, const gl::ColorUI *src);
143  static void average(A8R8G8B8 *dst, const A8R8G8B8 *src1, const A8R8G8B8 *src2);
144 };
145 
146 struct R8G8B8A8
147 {
152 
153  static void readColor(gl::ColorF *dst, const R8G8B8A8 *src);
154  static void readColor(gl::ColorUI *dst, const R8G8B8A8 *src);
155  static void writeColor(R8G8B8A8 *dst, const gl::ColorF *src);
156  static void writeColor(R8G8B8A8 *dst, const gl::ColorUI *src);
157  static void average(R8G8B8A8 *dst, const R8G8B8A8 *src1, const R8G8B8A8 *src2);
158 };
159 
160 struct B8G8R8A8
161 {
166 
167  static void readColor(gl::ColorF *dst, const B8G8R8A8 *src);
168  static void readColor(gl::ColorUI *dst, const B8G8R8A8 *src);
169  static void writeColor(B8G8R8A8 *dst, const gl::ColorF *src);
170  static void writeColor(B8G8R8A8 *dst, const gl::ColorUI *src);
171  static void average(B8G8R8A8 *dst, const B8G8R8A8 *src1, const B8G8R8A8 *src2);
172 };
173 
174 struct B8G8R8X8
175 {
180 
181  static void readColor(gl::ColorF *dst, const B8G8R8X8 *src);
182  static void readColor(gl::ColorUI *dst, const B8G8R8X8 *src);
183  static void writeColor(B8G8R8X8 *dst, const gl::ColorF *src);
184  static void writeColor(B8G8R8X8 *dst, const gl::ColorUI *src);
185  static void average(B8G8R8X8 *dst, const B8G8R8X8 *src1, const B8G8R8X8 *src2);
186 };
187 
188 struct A1R5G5B5
189 {
191 
192  static void readColor(gl::ColorF *dst, const A1R5G5B5 *src);
193  static void writeColor(A1R5G5B5 *dst, const gl::ColorF *src);
194  static void average(A1R5G5B5 *dst, const A1R5G5B5 *src1, const A1R5G5B5 *src2);
195 };
196 
197 struct R5G5B5A1
198 {
199  // OpenGL ES 2.0.25 spec Section 3.6.2: "Components are packed with the first component in the
200  // most significant
201  // bits of the bitfield, and successive component occupying progressively less significant
202  // locations"
204 
205  static void readColor(gl::ColorF *dst, const R5G5B5A1 *src);
206  static void writeColor(R5G5B5A1 *dst, const gl::ColorF *src);
207  static void average(R5G5B5A1 *dst, const R5G5B5A1 *src1, const R5G5B5A1 *src2);
208 };
209 
210 struct R4G4B4A4
211 {
212  // OpenGL ES 2.0.25 spec Section 3.6.2: "Components are packed with the first component in the
213  // most significant
214  // bits of the bitfield, and successive component occupying progressively less significant
215  // locations"
217 
218  static void readColor(gl::ColorF *dst, const R4G4B4A4 *src);
219  static void writeColor(R4G4B4A4 *dst, const gl::ColorF *src);
220  static void average(R4G4B4A4 *dst, const R4G4B4A4 *src1, const R4G4B4A4 *src2);
221 };
222 
223 struct A4R4G4B4
224 {
226 
227  static void readColor(gl::ColorF *dst, const A4R4G4B4 *src);
228  static void writeColor(A4R4G4B4 *dst, const gl::ColorF *src);
229  static void average(A4R4G4B4 *dst, const A4R4G4B4 *src1, const A4R4G4B4 *src2);
230 };
231 
232 struct R16
233 {
235 
236  static void readColor(gl::ColorF *dst, const R16 *src);
237  static void readColor(gl::ColorUI *dst, const R16 *src);
238  static void writeColor(R16 *dst, const gl::ColorF *src);
239  static void writeColor(R16 *dst, const gl::ColorUI *src);
240  static void average(R16 *dst, const R16 *src1, const R16 *src2);
241 };
242 
243 struct R16G16
244 {
247 
248  static void readColor(gl::ColorF *dst, const R16G16 *src);
249  static void readColor(gl::ColorUI *dst, const R16G16 *src);
250  static void writeColor(R16G16 *dst, const gl::ColorF *src);
251  static void writeColor(R16G16 *dst, const gl::ColorUI *src);
252  static void average(R16G16 *dst, const R16G16 *src1, const R16G16 *src2);
253 };
254 
255 struct R16G16B16
256 {
260 
261  static void readColor(gl::ColorF *dst, const R16G16B16 *src);
262  static void readColor(gl::ColorUI *dst, const R16G16B16 *src);
263  static void writeColor(R16G16B16 *dst, const gl::ColorF *src);
264  static void writeColor(R16G16B16 *dst, const gl::ColorUI *src);
265  static void average(R16G16B16 *dst, const R16G16B16 *src1, const R16G16B16 *src2);
266 };
267 
269 {
274 
275  static void readColor(gl::ColorF *dst, const R16G16B16A16 *src);
276  static void readColor(gl::ColorUI *dst, const R16G16B16A16 *src);
277  static void writeColor(R16G16B16A16 *dst, const gl::ColorF *src);
278  static void writeColor(R16G16B16A16 *dst, const gl::ColorUI *src);
279  static void average(R16G16B16A16 *dst, const R16G16B16A16 *src1, const R16G16B16A16 *src2);
280 };
281 
282 struct R32
283 {
285 
286  static void readColor(gl::ColorF *dst, const R32 *src);
287  static void readColor(gl::ColorUI *dst, const R32 *src);
288  static void writeColor(R32 *dst, const gl::ColorF *src);
289  static void writeColor(R32 *dst, const gl::ColorUI *src);
290  static void average(R32 *dst, const R32 *src1, const R32 *src2);
291 };
292 
293 struct R32G32
294 {
297 
298  static void readColor(gl::ColorF *dst, const R32G32 *src);
299  static void readColor(gl::ColorUI *dst, const R32G32 *src);
300  static void writeColor(R32G32 *dst, const gl::ColorF *src);
301  static void writeColor(R32G32 *dst, const gl::ColorUI *src);
302  static void average(R32G32 *dst, const R32G32 *src1, const R32G32 *src2);
303 };
304 
305 struct R32G32B32
306 {
310 
311  static void readColor(gl::ColorF *dst, const R32G32B32 *src);
312  static void readColor(gl::ColorUI *dst, const R32G32B32 *src);
313  static void writeColor(R32G32B32 *dst, const gl::ColorF *src);
314  static void writeColor(R32G32B32 *dst, const gl::ColorUI *src);
315  static void average(R32G32B32 *dst, const R32G32B32 *src1, const R32G32B32 *src2);
316 };
317 
319 {
324 
325  static void readColor(gl::ColorF *dst, const R32G32B32A32 *src);
326  static void readColor(gl::ColorUI *dst, const R32G32B32A32 *src);
327  static void writeColor(R32G32B32A32 *dst, const gl::ColorF *src);
328  static void writeColor(R32G32B32A32 *dst, const gl::ColorUI *src);
329  static void average(R32G32B32A32 *dst, const R32G32B32A32 *src1, const R32G32B32A32 *src2);
330 };
331 
332 struct R8S
333 {
335 
336  static void readColor(gl::ColorF *dst, const R8S *src);
337  static void readColor(gl::ColorI *dst, const R8S *src);
338  static void writeColor(R8S *dst, const gl::ColorF *src);
339  static void writeColor(R8S *dst, const gl::ColorI *src);
340  static void average(R8S *dst, const R8S *src1, const R8S *src2);
341 };
342 
343 struct R8G8S
344 {
347 
348  static void readColor(gl::ColorF *dst, const R8G8S *src);
349  static void readColor(gl::ColorI *dst, const R8G8S *src);
350  static void writeColor(R8G8S *dst, const gl::ColorF *src);
351  static void writeColor(R8G8S *dst, const gl::ColorI *src);
352  static void average(R8G8S *dst, const R8G8S *src1, const R8G8S *src2);
353 };
354 
355 struct R8G8B8S
356 {
360 
361  static void readColor(gl::ColorF *dst, const R8G8B8S *src);
362  static void readColor(gl::ColorI *dst, const R8G8B8S *src);
363  static void writeColor(R8G8B8S *dst, const gl::ColorF *src);
364  static void writeColor(R8G8B8S *dst, const gl::ColorI *src);
365  static void average(R8G8B8S *dst, const R8G8B8S *src1, const R8G8B8S *src2);
366 };
367 
368 struct R8G8B8A8S
369 {
374 
375  static void readColor(gl::ColorF *dst, const R8G8B8A8S *src);
376  static void readColor(gl::ColorI *dst, const R8G8B8A8S *src);
377  static void writeColor(R8G8B8A8S *dst, const gl::ColorF *src);
378  static void writeColor(R8G8B8A8S *dst, const gl::ColorI *src);
379  static void average(R8G8B8A8S *dst, const R8G8B8A8S *src1, const R8G8B8A8S *src2);
380 };
381 
382 struct R16S
383 {
385 
386  static void readColor(gl::ColorF *dst, const R16S *src);
387  static void readColor(gl::ColorI *dst, const R16S *src);
388  static void writeColor(R16S *dst, const gl::ColorF *src);
389  static void writeColor(R16S *dst, const gl::ColorI *src);
390  static void average(R16S *dst, const R16S *src1, const R16S *src2);
391 };
392 
393 struct R16G16S
394 {
397 
398  static void readColor(gl::ColorF *dst, const R16G16S *src);
399  static void readColor(gl::ColorI *dst, const R16G16S *src);
400  static void writeColor(R16G16S *dst, const gl::ColorF *src);
401  static void writeColor(R16G16S *dst, const gl::ColorI *src);
402  static void average(R16G16S *dst, const R16G16S *src1, const R16G16S *src2);
403 };
404 
406 {
410 
411  static void readColor(gl::ColorF *dst, const R16G16B16S *src);
412  static void readColor(gl::ColorI *dst, const R16G16B16S *src);
413  static void writeColor(R16G16B16S *dst, const gl::ColorF *src);
414  static void writeColor(R16G16B16S *dst, const gl::ColorI *src);
415  static void average(R16G16B16S *dst, const R16G16B16S *src1, const R16G16B16S *src2);
416 };
417 
419 {
424 
425  static void readColor(gl::ColorF *dst, const R16G16B16A16S *src);
426  static void readColor(gl::ColorI *dst, const R16G16B16A16S *src);
427  static void writeColor(R16G16B16A16S *dst, const gl::ColorF *src);
428  static void writeColor(R16G16B16A16S *dst, const gl::ColorI *src);
429  static void average(R16G16B16A16S *dst, const R16G16B16A16S *src1, const R16G16B16A16S *src2);
430 };
431 
432 struct R32S
433 {
435 
436  static void readColor(gl::ColorF *dst, const R32S *src);
437  static void readColor(gl::ColorI *dst, const R32S *src);
438  static void writeColor(R32S *dst, const gl::ColorF *src);
439  static void writeColor(R32S *dst, const gl::ColorI *src);
440  static void average(R32S *dst, const R32S *src1, const R32S *src2);
441 };
442 
443 struct R32G32S
444 {
447 
448  static void readColor(gl::ColorF *dst, const R32G32S *src);
449  static void readColor(gl::ColorI *dst, const R32G32S *src);
450  static void writeColor(R32G32S *dst, const gl::ColorF *src);
451  static void writeColor(R32G32S *dst, const gl::ColorI *src);
452  static void average(R32G32S *dst, const R32G32S *src1, const R32G32S *src2);
453 };
454 
456 {
460 
461  static void readColor(gl::ColorF *dst, const R32G32B32S *src);
462  static void readColor(gl::ColorI *dst, const R32G32B32S *src);
463  static void writeColor(R32G32B32S *dst, const gl::ColorF *src);
464  static void writeColor(R32G32B32S *dst, const gl::ColorI *src);
465  static void average(R32G32B32S *dst, const R32G32B32S *src1, const R32G32B32S *src2);
466 };
467 
469 {
474 
475  static void readColor(gl::ColorF *dst, const R32G32B32A32S *src);
476  static void readColor(gl::ColorI *dst, const R32G32B32A32S *src);
477  static void writeColor(R32G32B32A32S *dst, const gl::ColorF *src);
478  static void writeColor(R32G32B32A32S *dst, const gl::ColorI *src);
479  static void average(R32G32B32A32S *dst, const R32G32B32A32S *src1, const R32G32B32A32S *src2);
480 };
481 
483 {
488 
489  static void readColor(gl::ColorF *dst, const A16B16G16R16F *src);
490  static void writeColor(A16B16G16R16F *dst, const gl::ColorF *src);
491  static void average(A16B16G16R16F *dst, const A16B16G16R16F *src1, const A16B16G16R16F *src2);
492 };
493 
495 {
500 
501  static void readColor(gl::ColorF *dst, const R16G16B16A16F *src);
502  static void writeColor(R16G16B16A16F *dst, const gl::ColorF *src);
503  static void average(R16G16B16A16F *dst, const R16G16B16A16F *src1, const R16G16B16A16F *src2);
504 };
505 
506 struct R16F
507 {
509 
510  static void readColor(gl::ColorF *dst, const R16F *src);
511  static void writeColor(R16F *dst, const gl::ColorF *src);
512  static void average(R16F *dst, const R16F *src1, const R16F *src2);
513 };
514 
515 struct A16F
516 {
518 
519  static void readColor(gl::ColorF *dst, const A16F *src);
520  static void writeColor(A16F *dst, const gl::ColorF *src);
521  static void average(A16F *dst, const A16F *src1, const A16F *src2);
522 };
523 
524 struct L16F
525 {
527 
528  static void readColor(gl::ColorF *dst, const L16F *src);
529  static void writeColor(L16F *dst, const gl::ColorF *src);
530  static void average(L16F *dst, const L16F *src1, const L16F *src2);
531 };
532 
533 struct L16A16F
534 {
537 
538  static void readColor(gl::ColorF *dst, const L16A16F *src);
539  static void writeColor(L16A16F *dst, const gl::ColorF *src);
540  static void average(L16A16F *dst, const L16A16F *src1, const L16A16F *src2);
541 };
542 
543 struct R16G16F
544 {
547 
548  static void readColor(gl::ColorF *dst, const R16G16F *src);
549  static void writeColor(R16G16F *dst, const gl::ColorF *src);
550  static void average(R16G16F *dst, const R16G16F *src1, const R16G16F *src2);
551 };
552 
554 {
558 
559  static void readColor(gl::ColorF *dst, const R16G16B16F *src);
560  static void writeColor(R16G16B16F *dst, const gl::ColorF *src);
561  static void average(R16G16B16F *dst, const R16G16B16F *src1, const R16G16B16F *src2);
562 };
563 
565 {
566  float A;
567  float R;
568  float G;
569  float B;
570 
571  static void readColor(gl::ColorF *dst, const A32B32G32R32F *src);
572  static void writeColor(A32B32G32R32F *dst, const gl::ColorF *src);
573  static void average(A32B32G32R32F *dst, const A32B32G32R32F *src1, const A32B32G32R32F *src2);
574 };
575 
577 {
578  float R;
579  float G;
580  float B;
581  float A;
582 
583  static void readColor(gl::ColorF *dst, const R32G32B32A32F *src);
584  static void writeColor(R32G32B32A32F *dst, const gl::ColorF *src);
585  static void average(R32G32B32A32F *dst, const R32G32B32A32F *src1, const R32G32B32A32F *src2);
586 };
587 
588 struct R32F
589 {
590  float R;
591 
592  static void readColor(gl::ColorF *dst, const R32F *src);
593  static void writeColor(R32F *dst, const gl::ColorF *src);
594  static void average(R32F *dst, const R32F *src1, const R32F *src2);
595 };
596 
597 struct A32F
598 {
599  float A;
600 
601  static void readColor(gl::ColorF *dst, const A32F *src);
602  static void writeColor(A32F *dst, const gl::ColorF *src);
603  static void average(A32F *dst, const A32F *src1, const A32F *src2);
604 };
605 
606 struct L32F
607 {
608  float L;
609 
610  static void readColor(gl::ColorF *dst, const L32F *src);
611  static void writeColor(L32F *dst, const gl::ColorF *src);
612  static void average(L32F *dst, const L32F *src1, const L32F *src2);
613 };
614 
615 struct L32A32F
616 {
617  float L;
618  float A;
619 
620  static void readColor(gl::ColorF *dst, const L32A32F *src);
621  static void writeColor(L32A32F *dst, const gl::ColorF *src);
622  static void average(L32A32F *dst, const L32A32F *src1, const L32A32F *src2);
623 };
624 
625 struct R32G32F
626 {
627  float R;
628  float G;
629 
630  static void readColor(gl::ColorF *dst, const R32G32F *src);
631  static void writeColor(R32G32F *dst, const gl::ColorF *src);
632  static void average(R32G32F *dst, const R32G32F *src1, const R32G32F *src2);
633 };
634 
636 {
637  float R;
638  float G;
639  float B;
640 
641  static void readColor(gl::ColorF *dst, const R32G32B32F *src);
642  static void writeColor(R32G32B32F *dst, const gl::ColorF *src);
643  static void average(R32G32B32F *dst, const R32G32B32F *src1, const R32G32B32F *src2);
644 };
645 
647 {
648  uint32_t R : 10;
649  uint32_t G : 10;
650  uint32_t B : 10;
651  uint32_t A : 2;
652 
653  static void readColor(gl::ColorF *dst, const R10G10B10A2 *src);
654  static void readColor(gl::ColorUI *dst, const R10G10B10A2 *src);
655  static void writeColor(R10G10B10A2 *dst, const gl::ColorF *src);
656  static void writeColor(R10G10B10A2 *dst, const gl::ColorUI *src);
657  static void average(R10G10B10A2 *dst, const R10G10B10A2 *src1, const R10G10B10A2 *src2);
658 };
659 static_assert(sizeof(R10G10B10A2) == 4, "R10G10B10A2 struct not 32-bits.");
660 
661 struct R9G9B9E5
662 {
663  uint32_t R : 9;
664  uint32_t G : 9;
665  uint32_t B : 9;
666  uint32_t E : 5;
667 
668  static void readColor(gl::ColorF *dst, const R9G9B9E5 *src);
669  static void writeColor(R9G9B9E5 *dst, const gl::ColorF *src);
670  static void average(R9G9B9E5 *dst, const R9G9B9E5 *src1, const R9G9B9E5 *src2);
671 };
672 static_assert(sizeof(R9G9B9E5) == 4, "R9G9B9E5 struct not 32-bits.");
673 
675 {
676  uint32_t R : 11;
677  uint32_t G : 11;
678  uint32_t B : 10;
679 
680  static void readColor(gl::ColorF *dst, const R11G11B10F *src);
681  static void writeColor(R11G11B10F *dst, const gl::ColorF *src);
682  static void average(R11G11B10F *dst, const R11G11B10F *src1, const R11G11B10F *src2);
683 };
684 static_assert(sizeof(R11G11B10F) == 4, "R11G11B10F struct not 32-bits.");
685 
686 } // namespace angle
687 
688 #endif // IMAGEUTIL_IMAGEFORMATS_H_
float B
Definition: imageformats.h:639
Definition: imageformats.h:515
uint32_t G
Definition: imageformats.h:664
uint32_t B
Definition: imageformats.h:322
Definition: imageformats.h:343
int32_t R
Definition: imageformats.h:434
uint16_t ARGB
Definition: imageformats.h:190
uint16_t R
Definition: imageformats.h:508
int16_t G
Definition: imageformats.h:408
float G
Definition: imageformats.h:628
uint32_t G
Definition: imageformats.h:677
Definition: imageformats.h:588
Definition: imageformats.h:494
Definition: imageformats.h:210
Definition: imageformats.h:160
Definition: imageformats.h:146
uint8_t A
Definition: imageformats.h:151
uint16_t RGBA
Definition: imageformats.h:203
uint8_t R
Definition: imageformats.h:102
static void readColor(gl::ColorF *dst, const L8 *src)
Definition: imageformats.cpp:17
Definition: imageformats.h:597
float A
Definition: imageformats.h:581
Definition: imageformats.h:533
uint8_t L
Definition: imageformats.h:26
uint8_t A
Definition: imageformats.h:165
uint8_t G
Definition: imageformats.h:88
uint32_t G
Definition: imageformats.h:649
int32_t B
Definition: imageformats.h:472
uint8_t R
Definition: imageformats.h:35
uint32_t B
Definition: imageformats.h:309
uint16_t R
Definition: imageformats.h:555
static void writeColor(L8 *dst, const gl::ColorF *src)
Definition: imageformats.cpp:26
signed int int32_t
Definition: ptypes.h:101
unsigned int uint32_t
Definition: ptypes.h:105
float B
Definition: imageformats.h:569
Definition: imageformats.h:443
Definition: imageformats.h:223
Definition: imageformats.h:132
Definition: imageformats.h:625
uint8_t L
Definition: imageformats.h:55
uint16_t G
Definition: imageformats.h:546
Definition: imageformats.h:268
int8_t R
Definition: imageformats.h:357
int8_t A
Definition: imageformats.h:373
uint16_t B
Definition: imageformats.h:498
int32_t R
Definition: imageformats.h:457
Definition: imageformats.h:63
Definition: imageformats.h:553
Definition: imageformats.h:635
float A
Definition: imageformats.h:566
uint16_t R
Definition: imageformats.h:485
Definition: imageformats.h:393
Definition: imageformats.h:382
Definition: imageformats.h:243
uint8_t B
Definition: imageformats.h:89
uint16_t L
Definition: imageformats.h:535
uint32_t A
Definition: imageformats.h:323
uint16_t R
Definition: imageformats.h:257
signed short int16_t
Definition: ptypes.h:93
int32_t G
Definition: imageformats.h:471
Definition: imageformats.h:524
uint16_t R
Definition: imageformats.h:245
Definition: imageformats.h:432
uint32_t R
Definition: imageformats.h:676
Definition: imageformats.h:33
float L
Definition: imageformats.h:608
uint8_t R
Definition: imageformats.h:164
uint8_t R
Definition: imageformats.h:135
uint8_t B
Definition: imageformats.h:150
uint16_t A
Definition: imageformats.h:536
uint16_t R
Definition: imageformats.h:270
uint16_t B
Definition: imageformats.h:487
uint32_t B
Definition: imageformats.h:665
float G
Definition: imageformats.h:638
float A
Definition: imageformats.h:618
Definition: imageformats.h:418
int16_t R
Definition: imageformats.h:395
int16_t R
Definition: imageformats.h:384
int32_t R
Definition: imageformats.h:445
uint8_t A
Definition: imageformats.h:65
int16_t B
Definition: imageformats.h:409
Definition: imageformats.h:606
Definition: imageformats.h:53
int8_t G
Definition: imageformats.h:346
GLenum GLenum dst
Definition: gl2ext.h:304
uint8_t L
Definition: imageformats.h:66
uint32_t R
Definition: imageformats.h:663
float R
Definition: imageformats.h:567
uint16_t A
Definition: imageformats.h:484
Definition: imageformats.h:232
uint8_t G
Definition: imageformats.h:177
Definition: imageformats.h:405
int8_t G
Definition: imageformats.h:371
Definition: imageformats.h:543
uint16_t G
Definition: imageformats.h:246
uint8_t A
Definition: imageformats.h:46
uint32_t B
Definition: imageformats.h:678
Definition: Platform.h:33
int16_t B
Definition: imageformats.h:422
uint8_t A
Definition: imageformats.h:134
Definition: imageformats.h:255
float A
Definition: imageformats.h:599
unsigned char uint8_t
Definition: ptypes.h:89
unsigned short uint16_t
Definition: ptypes.h:97
uint32_t R
Definition: imageformats.h:307
uint16_t A
Definition: imageformats.h:517
uint16_t A
Definition: imageformats.h:499
Definition: imageformats.h:455
uint8_t R
Definition: imageformats.h:178
uint32_t B
Definition: imageformats.h:650
int32_t G
Definition: imageformats.h:446
Definition: imageformats.h:98
Definition: imageformats.h:85
uint32_t G
Definition: imageformats.h:308
uint16_t B
Definition: imageformats.h:557
uint16_t B
Definition: imageformats.h:272
int8_t R
Definition: imageformats.h:370
Definition: imageformats.h:674
uint32_t R
Definition: imageformats.h:284
uint16_t G
Definition: imageformats.h:497
uint16_t BGR
Definition: imageformats.h:125
int8_t R
Definition: imageformats.h:345
Definition: imageformats.h:355
Definition: Color.h:16
int16_t G
Definition: imageformats.h:421
Definition: imageformats.h:368
float R
Definition: imageformats.h:627
int8_t B
Definition: imageformats.h:372
uint16_t L
Definition: imageformats.h:526
uint32_t G
Definition: imageformats.h:296
uint8_t G
Definition: imageformats.h:101
float B
Definition: imageformats.h:580
int8_t B
Definition: imageformats.h:359
uint8_t R
Definition: imageformats.h:75
uint32_t G
Definition: imageformats.h:321
Definition: imageformats.h:197
uint8_t B
Definition: imageformats.h:100
int16_t R
Definition: imageformats.h:407
uint16_t B
Definition: imageformats.h:259
Definition: imageformats.h:646
GLenum src
Definition: gl2ext.h:304
int16_t A
Definition: imageformats.h:423
static void average(L8 *dst, const L8 *src1, const L8 *src2)
Definition: imageformats.cpp:31
int32_t R
Definition: imageformats.h:470
float G
Definition: imageformats.h:579
uint32_t A
Definition: imageformats.h:651
Definition: imageformats.h:576
Definition: imageformats.h:318
Definition: imageformats.h:188
uint8_t G
Definition: imageformats.h:136
Definition: imageformats.h:293
Definition: imageformats.h:282
float G
Definition: imageformats.h:568
uint16_t ARGB
Definition: imageformats.h:225
uint8_t A
Definition: imageformats.h:56
uint16_t R
Definition: imageformats.h:545
uint8_t B
Definition: imageformats.h:162
int16_t R
Definition: imageformats.h:420
int32_t B
Definition: imageformats.h:459
Definition: imageformats.h:305
uint16_t G
Definition: imageformats.h:258
int16_t G
Definition: imageformats.h:396
uint16_t G
Definition: imageformats.h:556
uint8_t G
Definition: imageformats.h:76
Definition: imageformats.h:615
int32_t G
Definition: imageformats.h:458
uint32_t R
Definition: imageformats.h:320
Definition: imageformats.h:482
signed char int8_t
Definition: ptypes.h:85
uint8_t R
Definition: imageformats.h:148
Definition: imageformats.h:24
int8_t R
Definition: imageformats.h:334
Definition: imageformats.h:123
Definition: imageformats.h:111
int8_t G
Definition: imageformats.h:358
uint32_t R
Definition: imageformats.h:295
Definition: imageformats.h:332
uint16_t R
Definition: imageformats.h:234
float L
Definition: imageformats.h:617
Definition: imageformats.h:468
uint8_t B
Definition: imageformats.h:176
Definition: imageformats.h:564
float R
Definition: imageformats.h:637
uint8_t X
Definition: imageformats.h:179
Definition: imageformats.h:44
int32_t A
Definition: imageformats.h:473
float R
Definition: imageformats.h:590
uint32_t R
Definition: imageformats.h:648
uint8_t R
Definition: imageformats.h:87
uint16_t G
Definition: imageformats.h:486
uint16_t G
Definition: imageformats.h:271
uint8_t G
Definition: imageformats.h:149
uint16_t RGB
Definition: imageformats.h:116
Definition: imageformats.h:73
uint16_t RGBA
Definition: imageformats.h:216
uint16_t A
Definition: imageformats.h:273
uint16_t R
Definition: imageformats.h:496
uint8_t G
Definition: imageformats.h:163
Definition: imageformats.h:661
float R
Definition: imageformats.h:578
Definition: imageformats.h:506
uint8_t B
Definition: imageformats.h:137
Definition: imageformats.h:174
uint32_t E
Definition: imageformats.h:666