Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(112)

Side by Side Diff: third_party/libpng/pngstruct.h

Issue 1591483003: XFA: Upgrade libpng to 1.6.20. (Closed) Base URL: https://pdfium.googlesource.com/pdfium.git@xfa
Patch Set: rebase Created 4 years, 11 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « third_party/libpng/pngset.c ('k') | third_party/libpng/pngtrans.c » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 1
2 /* pngstruct.h - header file for PNG reference library 2 /* pngstruct.h - header file for PNG reference library
3 * 3 *
4 * Copyright (c) 1998-2013 Glenn Randers-Pehrson 4 * Last changed in libpng 1.6.18 [July 23, 2015]
5 * Copyright (c) 1998-2015 Glenn Randers-Pehrson
5 * (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger) 6 * (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger)
6 * (Version 0.88 Copyright (c) 1995, 1996 Guy Eric Schalnat, Group 42, Inc.) 7 * (Version 0.88 Copyright (c) 1995, 1996 Guy Eric Schalnat, Group 42, Inc.)
7 * 8 *
8 * Last changed in libpng 1.6.1 [March 28, 2013]
9 *
10 * This code is released under the libpng license. 9 * This code is released under the libpng license.
11 * For conditions of distribution and use, see the disclaimer 10 * For conditions of distribution and use, see the disclaimer
12 * and license in png.h 11 * and license in png.h
13 */ 12 */
14 13
15 /* The structure that holds the information to read and write PNG files. 14 /* The structure that holds the information to read and write PNG files.
16 * The only people who need to care about what is inside of this are the 15 * The only people who need to care about what is inside of this are the
17 * people who will be modifying the library for their own special needs. 16 * people who will be modifying the library for their own special needs.
18 * It should NOT be accessed directly by an application. 17 * It should NOT be accessed directly by an application.
19 */ 18 */
(...skipping 74 matching lines...) Expand 10 before | Expand all | Expand 10 after
94 */ 93 */
95 typedef struct png_XYZ 94 typedef struct png_XYZ
96 { 95 {
97 png_fixed_point red_X, red_Y, red_Z; 96 png_fixed_point red_X, red_Y, red_Z;
98 png_fixed_point green_X, green_Y, green_Z; 97 png_fixed_point green_X, green_Y, green_Z;
99 png_fixed_point blue_X, blue_Y, blue_Z; 98 png_fixed_point blue_X, blue_Y, blue_Z;
100 } png_XYZ; 99 } png_XYZ;
101 #endif /* COLORSPACE */ 100 #endif /* COLORSPACE */
102 101
103 #if defined(PNG_COLORSPACE_SUPPORTED) || defined(PNG_GAMMA_SUPPORTED) 102 #if defined(PNG_COLORSPACE_SUPPORTED) || defined(PNG_GAMMA_SUPPORTED)
104 /* A colorspace is all the above plus, potentially, profile information, 103 /* A colorspace is all the above plus, potentially, profile information;
105 * however at present libpng does not use the profile internally so it is only 104 * however at present libpng does not use the profile internally so it is only
106 * stored in the png_info struct (if iCCP is supported.) The rendering intent 105 * stored in the png_info struct (if iCCP is supported.) The rendering intent
107 * is retained here and is checked. 106 * is retained here and is checked.
108 * 107 *
109 * The file gamma encoding information is also stored here and gamma correction 108 * The file gamma encoding information is also stored here and gamma correction
110 * is done by libpng, whereas color correction must currently be done by the 109 * is done by libpng, whereas color correction must currently be done by the
111 * application. 110 * application.
112 */ 111 */
113 typedef struct png_colorspace 112 typedef struct png_colorspace
114 { 113 {
(...skipping 98 matching lines...) Expand 10 before | Expand all | Expand 10 after
213 212
214 png_uint_32 width; /* width of image in pixels */ 213 png_uint_32 width; /* width of image in pixels */
215 png_uint_32 height; /* height of image in pixels */ 214 png_uint_32 height; /* height of image in pixels */
216 png_uint_32 num_rows; /* number of rows in current pass */ 215 png_uint_32 num_rows; /* number of rows in current pass */
217 png_uint_32 usr_width; /* width of row at start of write */ 216 png_uint_32 usr_width; /* width of row at start of write */
218 png_size_t rowbytes; /* size of row in bytes */ 217 png_size_t rowbytes; /* size of row in bytes */
219 png_uint_32 iwidth; /* width of current interlaced row in pixels */ 218 png_uint_32 iwidth; /* width of current interlaced row in pixels */
220 png_uint_32 row_number; /* current row in interlace pass */ 219 png_uint_32 row_number; /* current row in interlace pass */
221 png_uint_32 chunk_name; /* PNG_CHUNK() id of current chunk */ 220 png_uint_32 chunk_name; /* PNG_CHUNK() id of current chunk */
222 png_bytep prev_row; /* buffer to save previous (unfiltered) row. 221 png_bytep prev_row; /* buffer to save previous (unfiltered) row.
223 * This is a pointer into big_prev_row 222 * While reading this is a pointer into
223 * big_prev_row; while writing it is separately
224 * allocated if needed.
224 */ 225 */
225 png_bytep row_buf; /* buffer to save current (unfiltered) row. 226 png_bytep row_buf; /* buffer to save current (unfiltered) row.
226 * This is a pointer into big_row_buf 227 * While reading, this is a pointer into
228 * big_row_buf; while writing it is separately
229 * allocated.
227 */ 230 */
228 #ifdef PNG_WRITE_SUPPORTED 231 #ifdef PNG_WRITE_FILTER_SUPPORTED
229 png_bytep sub_row; /* buffer to save "sub" row when filtering */ 232 png_bytep try_row; /* buffer to save trial row when filtering */
230 png_bytep up_row; /* buffer to save "up" row when filtering */ 233 png_bytep tst_row; /* buffer to save best trial row when filtering */
231 png_bytep avg_row; /* buffer to save "avg" row when filtering */
232 png_bytep paeth_row; /* buffer to save "Paeth" row when filtering */
233 #endif 234 #endif
234 png_size_t info_rowbytes; /* Added in 1.5.4: cache of updated row bytes */ 235 png_size_t info_rowbytes; /* Added in 1.5.4: cache of updated row bytes */
235 236
236 png_uint_32 idat_size; /* current IDAT size for read */ 237 png_uint_32 idat_size; /* current IDAT size for read */
237 png_uint_32 crc; /* current chunk CRC value */ 238 png_uint_32 crc; /* current chunk CRC value */
238 png_colorp palette; /* palette from the input file */ 239 png_colorp palette; /* palette from the input file */
239 png_uint_16 num_palette; /* number of color entries in palette */ 240 png_uint_16 num_palette; /* number of color entries in palette */
240 241
241 /* Added at libpng-1.5.10 */ 242 /* Added at libpng-1.5.10 */
242 #ifdef PNG_CHECK_FOR_INVALID_INDEX_SUPPORTED 243 #ifdef PNG_CHECK_FOR_INVALID_INDEX_SUPPORTED
(...skipping 12 matching lines...) Expand all
255 png_byte pixel_depth; /* number of bits per pixel */ 256 png_byte pixel_depth; /* number of bits per pixel */
256 png_byte channels; /* number of channels in file */ 257 png_byte channels; /* number of channels in file */
257 #ifdef PNG_WRITE_SUPPORTED 258 #ifdef PNG_WRITE_SUPPORTED
258 png_byte usr_channels; /* channels at start of write: write only */ 259 png_byte usr_channels; /* channels at start of write: write only */
259 #endif 260 #endif
260 png_byte sig_bytes; /* magic bytes read/written from start of file */ 261 png_byte sig_bytes; /* magic bytes read/written from start of file */
261 png_byte maximum_pixel_depth; 262 png_byte maximum_pixel_depth;
262 /* pixel depth used for the row buffers */ 263 /* pixel depth used for the row buffers */
263 png_byte transformed_pixel_depth; 264 png_byte transformed_pixel_depth;
264 /* pixel depth after read/write transforms */ 265 /* pixel depth after read/write transforms */
266 #if PNG_ZLIB_VERNUM >= 0x1240
267 png_byte zstream_start; /* at start of an input zlib stream */
268 #endif /* Zlib >= 1.2.4 */
265 #if defined(PNG_READ_FILLER_SUPPORTED) || defined(PNG_WRITE_FILLER_SUPPORTED) 269 #if defined(PNG_READ_FILLER_SUPPORTED) || defined(PNG_WRITE_FILLER_SUPPORTED)
266 png_uint_16 filler; /* filler bytes for pixel expansion */ 270 png_uint_16 filler; /* filler bytes for pixel expansion */
267 #endif 271 #endif
268 272
269 #if defined(PNG_bKGD_SUPPORTED) || defined(PNG_READ_BACKGROUND_SUPPORTED) ||\ 273 #if defined(PNG_bKGD_SUPPORTED) || defined(PNG_READ_BACKGROUND_SUPPORTED) ||\
270 defined(PNG_READ_ALPHA_MODE_SUPPORTED) 274 defined(PNG_READ_ALPHA_MODE_SUPPORTED)
271 png_byte background_gamma_type; 275 png_byte background_gamma_type;
272 png_fixed_point background_gamma; 276 png_fixed_point background_gamma;
273 png_color_16 background; /* background color in screen gamma space */ 277 png_color_16 background; /* background color in screen gamma space */
274 #ifdef PNG_READ_GAMMA_SUPPORTED 278 #ifdef PNG_READ_GAMMA_SUPPORTED
275 png_color_16 background_1; /* background normalized to gamma 1.0 */ 279 png_color_16 background_1; /* background normalized to gamma 1.0 */
276 #endif 280 #endif
277 #endif /* PNG_bKGD_SUPPORTED */ 281 #endif /* bKGD */
278 282
279 #ifdef PNG_WRITE_FLUSH_SUPPORTED 283 #ifdef PNG_WRITE_FLUSH_SUPPORTED
280 png_flush_ptr output_flush_fn; /* Function for flushing output */ 284 png_flush_ptr output_flush_fn; /* Function for flushing output */
281 png_uint_32 flush_dist; /* how many rows apart to flush, 0 - no flush */ 285 png_uint_32 flush_dist; /* how many rows apart to flush, 0 - no flush */
282 png_uint_32 flush_rows; /* number of rows written since last flush */ 286 png_uint_32 flush_rows; /* number of rows written since last flush */
283 #endif 287 #endif
284 288
285 #ifdef PNG_READ_GAMMA_SUPPORTED 289 #ifdef PNG_READ_GAMMA_SUPPORTED
286 int gamma_shift; /* number of "insignificant" bits in 16-bit gamma */ 290 int gamma_shift; /* number of "insignificant" bits in 16-bit gamma */
287 png_fixed_point screen_gamma; /* screen gamma value (display_exponent) */ 291 png_fixed_point screen_gamma; /* screen gamma value (display_exponent) */
(...skipping 36 matching lines...) Expand 10 before | Expand all | Expand 10 after
324 png_bytep current_buffer; /* buffer for recently used data */ 328 png_bytep current_buffer; /* buffer for recently used data */
325 png_uint_32 push_length; /* size of current input chunk */ 329 png_uint_32 push_length; /* size of current input chunk */
326 png_uint_32 skip_length; /* bytes to skip in input data */ 330 png_uint_32 skip_length; /* bytes to skip in input data */
327 png_size_t save_buffer_size; /* amount of data now in save_buffer */ 331 png_size_t save_buffer_size; /* amount of data now in save_buffer */
328 png_size_t save_buffer_max; /* total size of save_buffer */ 332 png_size_t save_buffer_max; /* total size of save_buffer */
329 png_size_t buffer_size; /* total amount of available input data */ 333 png_size_t buffer_size; /* total amount of available input data */
330 png_size_t current_buffer_size; /* amount of data now in current_buffer */ 334 png_size_t current_buffer_size; /* amount of data now in current_buffer */
331 int process_mode; /* what push library is currently doing */ 335 int process_mode; /* what push library is currently doing */
332 int cur_palette; /* current push library palette index */ 336 int cur_palette; /* current push library palette index */
333 337
334 #endif /* PNG_PROGRESSIVE_READ_SUPPORTED */ 338 #endif /* PROGRESSIVE_READ */
335 339
336 #if defined(__TURBOC__) && !defined(_Windows) && !defined(__FLAT__) 340 #if defined(__TURBOC__) && !defined(_Windows) && !defined(__FLAT__)
337 /* For the Borland special 64K segment handler */ 341 /* For the Borland special 64K segment handler */
338 png_bytepp offset_table_ptr; 342 png_bytepp offset_table_ptr;
339 png_bytep offset_table; 343 png_bytep offset_table;
340 png_uint_16 offset_table_number; 344 png_uint_16 offset_table_number;
341 png_uint_16 offset_table_count; 345 png_uint_16 offset_table_count;
342 png_uint_16 offset_table_count_free; 346 png_uint_16 offset_table_count_free;
343 #endif 347 #endif
344 348
345 #ifdef PNG_READ_QUANTIZE_SUPPORTED 349 #ifdef PNG_READ_QUANTIZE_SUPPORTED
346 png_bytep palette_lookup; /* lookup table for quantizing */ 350 png_bytep palette_lookup; /* lookup table for quantizing */
347 png_bytep quantize_index; /* index translation for palette files */ 351 png_bytep quantize_index; /* index translation for palette files */
348 #endif 352 #endif
349 353
350 #ifdef PNG_WRITE_WEIGHTED_FILTER_SUPPORTED 354 /* Options */
351 png_byte heuristic_method; /* heuristic for row filter selection */
352 png_byte num_prev_filters; /* number of weights for previous rows */
353 png_bytep prev_filters; /* filter type(s) of previous row(s) */
354 png_uint_16p filter_weights; /* weight(s) for previous line(s) */
355 png_uint_16p inv_filter_weights; /* 1/weight(s) for previous line(s) */
356 png_uint_16p filter_costs; /* relative filter calculation cost */
357 png_uint_16p inv_filter_costs; /* 1/relative filter calculation cost */
358 #endif
359
360 /* Options */
361 #ifdef PNG_SET_OPTION_SUPPORTED 355 #ifdef PNG_SET_OPTION_SUPPORTED
362 png_byte options; /* On/off state (up to 4 options) */ 356 png_byte options; /* On/off state (up to 4 options) */
363 #endif 357 #endif
364 358
365 #if PNG_LIBPNG_VER < 10700 359 #if PNG_LIBPNG_VER < 10700
366 /* To do: remove this from libpng-1.7 */ 360 /* To do: remove this from libpng-1.7 */
367 #ifdef PNG_TIME_RFC1123_SUPPORTED 361 #ifdef PNG_TIME_RFC1123_SUPPORTED
368 char time_buffer[29]; /* String to hold RFC 1123 time text */ 362 char time_buffer[29]; /* String to hold RFC 1123 time text */
369 #endif 363 #endif
370 #endif 364 #endif
(...skipping 109 matching lines...) Expand 10 before | Expand all | Expand 10 after
480 void (*read_filter[PNG_FILTER_VALUE_LAST-1])(png_row_infop row_info, 474 void (*read_filter[PNG_FILTER_VALUE_LAST-1])(png_row_infop row_info,
481 png_bytep row, png_const_bytep prev_row); 475 png_bytep row, png_const_bytep prev_row);
482 476
483 #ifdef PNG_READ_SUPPORTED 477 #ifdef PNG_READ_SUPPORTED
484 #if defined(PNG_COLORSPACE_SUPPORTED) || defined(PNG_GAMMA_SUPPORTED) 478 #if defined(PNG_COLORSPACE_SUPPORTED) || defined(PNG_GAMMA_SUPPORTED)
485 png_colorspace colorspace; 479 png_colorspace colorspace;
486 #endif 480 #endif
487 #endif 481 #endif
488 }; 482 };
489 #endif /* PNGSTRUCT_H */ 483 #endif /* PNGSTRUCT_H */
OLDNEW
« no previous file with comments | « third_party/libpng/pngset.c ('k') | third_party/libpng/pngtrans.c » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698