| OLD | NEW |
| 1 /* png.h - header file for PNG reference library | 1 /* png.h - header file for PNG reference library |
| 2 * | 2 * |
| 3 * libpng version 1.2.44 - June 26, 2010 | 3 * libpng version 1.2.45 - July 7, 2011 |
| 4 * Copyright (c) 1998-2010 Glenn Randers-Pehrson | 4 * Copyright (c) 1998-2011 Glenn Randers-Pehrson |
| 5 * (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger) | 5 * (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger) |
| 6 * (Version 0.88 Copyright (c) 1995, 1996 Guy Eric Schalnat, Group 42, Inc.) | 6 * (Version 0.88 Copyright (c) 1995, 1996 Guy Eric Schalnat, Group 42, Inc.) |
| 7 * | 7 * |
| 8 * This code is released under the libpng license (See LICENSE, below) | 8 * This code is released under the libpng license (See LICENSE, below) |
| 9 * | 9 * |
| 10 * Authors and maintainers: | 10 * Authors and maintainers: |
| 11 * libpng versions 0.71, May 1995, through 0.88, January 1996: Guy Schalnat | 11 * libpng versions 0.71, May 1995, through 0.88, January 1996: Guy Schalnat |
| 12 * libpng versions 0.89c, June 1996, through 0.96, May 1997: Andreas Dilger | 12 * libpng versions 0.89c, June 1996, through 0.96, May 1997: Andreas Dilger |
| 13 * libpng versions 0.97, January 1998, through 1.2.44 - June 26, 2010: Glenn | 13 * libpng versions 0.97, January 1998, through 1.2.45 - July 7, 2011: Glenn |
| 14 * See also "Contributing Authors", below. | 14 * See also "Contributing Authors", below. |
| 15 * | 15 * |
| 16 * Note about libpng version numbers: | 16 * Note about libpng version numbers: |
| 17 * | 17 * |
| 18 * Due to various miscommunications, unforeseen code incompatibilities | 18 * Due to various miscommunications, unforeseen code incompatibilities |
| 19 * and occasional factors outside the authors' control, version numbering | 19 * and occasional factors outside the authors' control, version numbering |
| 20 * on the library has not always been consistent and straightforward. | 20 * on the library has not always been consistent and straightforward. |
| 21 * The following table summarizes matters since version 0.89c, which was | 21 * The following table summarizes matters since version 0.89c, which was |
| 22 * the first widely used release: | 22 * the first widely used release: |
| 23 * | 23 * |
| (...skipping 200 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 224 * 1.2.35rc01-02 13 10235 12.so.0.35[.0] | 224 * 1.2.35rc01-02 13 10235 12.so.0.35[.0] |
| 225 * 1.0.43 10 10043 10.so.0.43[.0] | 225 * 1.0.43 10 10043 10.so.0.43[.0] |
| 226 * 1.2.35 13 10235 12.so.0.35[.0] | 226 * 1.2.35 13 10235 12.so.0.35[.0] |
| 227 * 1.2.36beta01-05 13 10236 12.so.0.36[.0] | 227 * 1.2.36beta01-05 13 10236 12.so.0.36[.0] |
| 228 * 1.2.36rc01 13 10236 12.so.0.36[.0] | 228 * 1.2.36rc01 13 10236 12.so.0.36[.0] |
| 229 * 1.0.44 10 10044 10.so.0.44[.0] | 229 * 1.0.44 10 10044 10.so.0.44[.0] |
| 230 * 1.2.36 13 10236 12.so.0.36[.0] | 230 * 1.2.36 13 10236 12.so.0.36[.0] |
| 231 * 1.2.37beta01-03 13 10237 12.so.0.37[.0] | 231 * 1.2.37beta01-03 13 10237 12.so.0.37[.0] |
| 232 * 1.2.37rc01 13 10237 12.so.0.37[.0] | 232 * 1.2.37rc01 13 10237 12.so.0.37[.0] |
| 233 * 1.2.37 13 10237 12.so.0.37[.0] | 233 * 1.2.37 13 10237 12.so.0.37[.0] |
| 234 * 1.2.45 10 10045 12.so.0.45[.0] | 234 * 1.0.45 10 10045 12.so.0.45[.0] |
| 235 * 1.0.46 10 10046 10.so.0.46[.0] | 235 * 1.0.46 10 10046 10.so.0.46[.0] |
| 236 * 1.2.38beta01 13 10238 12.so.0.38[.0] | 236 * 1.2.38beta01 13 10238 12.so.0.38[.0] |
| 237 * 1.2.38rc01-03 13 10238 12.so.0.38[.0] | 237 * 1.2.38rc01-03 13 10238 12.so.0.38[.0] |
| 238 * 1.0.47 10 10047 10.so.0.47[.0] | 238 * 1.0.47 10 10047 10.so.0.47[.0] |
| 239 * 1.2.38 13 10238 12.so.0.38[.0] | 239 * 1.2.38 13 10238 12.so.0.38[.0] |
| 240 * 1.2.39beta01-05 13 10239 12.so.0.39[.0] | 240 * 1.2.39beta01-05 13 10239 12.so.0.39[.0] |
| 241 * 1.2.39rc01 13 10239 12.so.0.39[.0] | 241 * 1.2.39rc01 13 10239 12.so.0.39[.0] |
| 242 * 1.0.48 10 10048 10.so.0.48[.0] | 242 * 1.0.48 10 10048 10.so.0.48[.0] |
| 243 * 1.2.39 13 10239 12.so.0.39[.0] | 243 * 1.2.39 13 10239 12.so.0.39[.0] |
| 244 * 1.2.40beta01 13 10240 12.so.0.40[.0] | 244 * 1.2.40beta01 13 10240 12.so.0.40[.0] |
| (...skipping 10 matching lines...) Expand all Loading... |
| 255 * 1.0.52 10 10052 10.so.0.52[.0] | 255 * 1.0.52 10 10052 10.so.0.52[.0] |
| 256 * 1.2.42 13 10242 12.so.0.42[.0] | 256 * 1.2.42 13 10242 12.so.0.42[.0] |
| 257 * 1.2.43beta01-05 13 10243 12.so.0.43[.0] | 257 * 1.2.43beta01-05 13 10243 12.so.0.43[.0] |
| 258 * 1.0.53rc01-02 10 10053 10.so.0.53[.0] | 258 * 1.0.53rc01-02 10 10053 10.so.0.53[.0] |
| 259 * 1.2.43rc01-02 13 10243 12.so.0.43[.0] | 259 * 1.2.43rc01-02 13 10243 12.so.0.43[.0] |
| 260 * 1.0.53 10 10053 10.so.0.53[.0] | 260 * 1.0.53 10 10053 10.so.0.53[.0] |
| 261 * 1.2.43 13 10243 12.so.0.43[.0] | 261 * 1.2.43 13 10243 12.so.0.43[.0] |
| 262 * 1.2.44beta01-03 13 10244 12.so.0.44[.0] | 262 * 1.2.44beta01-03 13 10244 12.so.0.44[.0] |
| 263 * 1.2.44rc01-03 13 10244 12.so.0.44[.0] | 263 * 1.2.44rc01-03 13 10244 12.so.0.44[.0] |
| 264 * 1.2.44 13 10244 12.so.0.44[.0] | 264 * 1.2.44 13 10244 12.so.0.44[.0] |
| 265 * 1.2.45beta01-03 13 10245 12.so.0.45[.0] |
| 266 * 1.0.55rc01 13 10055 10.so.0.55[.0] |
| 267 * 1.2.45rc01 13 10245 12.so.0.45[.0] |
| 268 * 1.0.55 13 10055 10.so.0.55[.0] |
| 269 * 1.2.45 13 10245 12.so.0.45[.0] |
| 265 * | 270 * |
| 266 * Henceforth the source version will match the shared-library major | 271 * Henceforth the source version will match the shared-library major |
| 267 * and minor numbers; the shared-library major version number will be | 272 * and minor numbers; the shared-library major version number will be |
| 268 * used for changes in backward compatibility, as it is intended. The | 273 * used for changes in backward compatibility, as it is intended. The |
| 269 * PNG_LIBPNG_VER macro, which is not used within libpng but is available | 274 * PNG_LIBPNG_VER macro, which is not used within libpng but is available |
| 270 * for applications, is an unsigned integer of the form xyyzz corresponding | 275 * for applications, is an unsigned integer of the form xyyzz corresponding |
| 271 * to the source version x.y.z (leading zeros in y and z). Beta versions | 276 * to the source version x.y.z (leading zeros in y and z). Beta versions |
| 272 * were given the previous public release number plus a letter, until | 277 * were given the previous public release number plus a letter, until |
| 273 * version 1.0.6j; from then on they were given the upcoming public | 278 * version 1.0.6j; from then on they were given the upcoming public |
| 274 * release number plus "betaNN" or "rcNN". | 279 * release number plus "betaNN" or "rcNN". |
| (...skipping 11 matching lines...) Expand all Loading... |
| 286 */ | 291 */ |
| 287 | 292 |
| 288 /* | 293 /* |
| 289 * COPYRIGHT NOTICE, DISCLAIMER, and LICENSE: | 294 * COPYRIGHT NOTICE, DISCLAIMER, and LICENSE: |
| 290 * | 295 * |
| 291 * If you modify libpng you may insert additional notices immediately following | 296 * If you modify libpng you may insert additional notices immediately following |
| 292 * this sentence. | 297 * this sentence. |
| 293 * | 298 * |
| 294 * This code is released under the libpng license. | 299 * This code is released under the libpng license. |
| 295 * | 300 * |
| 296 * libpng versions 1.2.6, August 15, 2004, through 1.2.44, June 26, 2010, are | 301 * libpng versions 1.2.6, August 15, 2004, through 1.2.45, July 7, 2011, are |
| 297 * Copyright (c) 2004, 2006-2010 Glenn Randers-Pehrson, and are | 302 * Copyright (c) 2004, 2006-2010 Glenn Randers-Pehrson, and are |
| 298 * distributed according to the same disclaimer and license as libpng-1.2.5 | 303 * distributed according to the same disclaimer and license as libpng-1.2.5 |
| 299 * with the following individual added to the list of Contributing Authors: | 304 * with the following individual added to the list of Contributing Authors: |
| 300 * | 305 * |
| 301 * Cosmin Truta | 306 * Cosmin Truta |
| 302 * | 307 * |
| 303 * libpng versions 1.0.7, July 1, 2000, through 1.2.5, October 3, 2002, are | 308 * libpng versions 1.0.7, July 1, 2000, through 1.2.5, October 3, 2002, are |
| 304 * Copyright (c) 2000-2002 Glenn Randers-Pehrson, and are | 309 * Copyright (c) 2000-2002 Glenn Randers-Pehrson, and are |
| 305 * distributed according to the same disclaimer and license as libpng-1.0.6 | 310 * distributed according to the same disclaimer and license as libpng-1.0.6 |
| 306 * with the following individuals added to the list of Contributing Authors: | 311 * with the following individuals added to the list of Contributing Authors: |
| (...skipping 91 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 398 * with testing, bug fixes, and patience. This wouldn't have been | 403 * with testing, bug fixes, and patience. This wouldn't have been |
| 399 * possible without all of you. | 404 * possible without all of you. |
| 400 * | 405 * |
| 401 * Thanks to Frank J. T. Wojcik for helping with the documentation. | 406 * Thanks to Frank J. T. Wojcik for helping with the documentation. |
| 402 */ | 407 */ |
| 403 | 408 |
| 404 /* | 409 /* |
| 405 * Y2K compliance in libpng: | 410 * Y2K compliance in libpng: |
| 406 * ========================= | 411 * ========================= |
| 407 * | 412 * |
| 408 * June 26, 2010 | 413 * July 7, 2011 |
| 409 * | 414 * |
| 410 * Since the PNG Development group is an ad-hoc body, we can't make | 415 * Since the PNG Development group is an ad-hoc body, we can't make |
| 411 * an official declaration. | 416 * an official declaration. |
| 412 * | 417 * |
| 413 * This is your unofficial assurance that libpng from version 0.71 and | 418 * This is your unofficial assurance that libpng from version 0.71 and |
| 414 * upward through 1.2.44 are Y2K compliant. It is my belief that earlier | 419 * upward through 1.2.45 are Y2K compliant. It is my belief that earlier |
| 415 * versions were also Y2K compliant. | 420 * versions were also Y2K compliant. |
| 416 * | 421 * |
| 417 * Libpng only has three year fields. One is a 2-byte unsigned integer | 422 * Libpng only has three year fields. One is a 2-byte unsigned integer |
| 418 * that will hold years up to 65535. The other two hold the date in text | 423 * that will hold years up to 65535. The other two hold the date in text |
| 419 * format, and will hold years up to 9999. | 424 * format, and will hold years up to 9999. |
| 420 * | 425 * |
| 421 * The integer is | 426 * The integer is |
| 422 * "png_uint_16 year" in png_time_struct. | 427 * "png_uint_16 year" in png_time_struct. |
| 423 * | 428 * |
| 424 * The strings are | 429 * The strings are |
| (...skipping 35 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 460 #ifndef PNG_H | 465 #ifndef PNG_H |
| 461 #define PNG_H | 466 #define PNG_H |
| 462 | 467 |
| 463 /* This is not the place to learn how to use libpng. The file libpng.txt | 468 /* This is not the place to learn how to use libpng. The file libpng.txt |
| 464 * describes how to use libpng, and the file example.c summarizes it | 469 * describes how to use libpng, and the file example.c summarizes it |
| 465 * with some code on which to build. This file is useful for looking | 470 * with some code on which to build. This file is useful for looking |
| 466 * at the actual function definitions and structure components. | 471 * at the actual function definitions and structure components. |
| 467 */ | 472 */ |
| 468 | 473 |
| 469 /* Version information for png.h - this should match the version in png.c */ | 474 /* Version information for png.h - this should match the version in png.c */ |
| 470 #define PNG_LIBPNG_VER_STRING "1.2.44" | 475 #define PNG_LIBPNG_VER_STRING "1.2.45" |
| 471 #define PNG_HEADER_VERSION_STRING \ | 476 #define PNG_HEADER_VERSION_STRING \ |
| 472 " libpng version 1.2.44 - June 26, 2010\n" | 477 " libpng version 1.2.45 - July 7, 2011\n" |
| 473 | 478 |
| 474 #define PNG_LIBPNG_VER_SONUM 0 | 479 #define PNG_LIBPNG_VER_SONUM 0 |
| 475 #define PNG_LIBPNG_VER_DLLNUM 13 | 480 #define PNG_LIBPNG_VER_DLLNUM 13 |
| 476 | 481 |
| 477 /* These should match the first 3 components of PNG_LIBPNG_VER_STRING: */ | 482 /* These should match the first 3 components of PNG_LIBPNG_VER_STRING: */ |
| 478 #define PNG_LIBPNG_VER_MAJOR 1 | 483 #define PNG_LIBPNG_VER_MAJOR 1 |
| 479 #define PNG_LIBPNG_VER_MINOR 2 | 484 #define PNG_LIBPNG_VER_MINOR 2 |
| 480 #define PNG_LIBPNG_VER_RELEASE 44 | 485 #define PNG_LIBPNG_VER_RELEASE 45 |
| 481 /* This should match the numeric part of the final component of | 486 /* This should match the numeric part of the final component of |
| 482 * PNG_LIBPNG_VER_STRING, omitting any leading zero: | 487 * PNG_LIBPNG_VER_STRING, omitting any leading zero: |
| 483 */ | 488 */ |
| 484 | 489 |
| 485 #define PNG_LIBPNG_VER_BUILD 0 | 490 #define PNG_LIBPNG_VER_BUILD 0 |
| 486 | 491 |
| 487 /* Release Status */ | 492 /* Release Status */ |
| 488 #define PNG_LIBPNG_BUILD_ALPHA 1 | 493 #define PNG_LIBPNG_BUILD_ALPHA 1 |
| 489 #define PNG_LIBPNG_BUILD_BETA 2 | 494 #define PNG_LIBPNG_BUILD_BETA 2 |
| 490 #define PNG_LIBPNG_BUILD_RC 3 | 495 #define PNG_LIBPNG_BUILD_RC 3 |
| 491 #define PNG_LIBPNG_BUILD_STABLE 4 | 496 #define PNG_LIBPNG_BUILD_STABLE 4 |
| 492 #define PNG_LIBPNG_BUILD_RELEASE_STATUS_MASK 7 | 497 #define PNG_LIBPNG_BUILD_RELEASE_STATUS_MASK 7 |
| 493 | 498 |
| 494 /* Release-Specific Flags */ | 499 /* Release-Specific Flags */ |
| 495 #define PNG_LIBPNG_BUILD_PATCH 8 /* Can be OR'ed with | 500 #define PNG_LIBPNG_BUILD_PATCH 8 /* Can be OR'ed with |
| 496 PNG_LIBPNG_BUILD_STABLE only */ | 501 PNG_LIBPNG_BUILD_STABLE only */ |
| 497 #define PNG_LIBPNG_BUILD_PRIVATE 16 /* Cannot be OR'ed with | 502 #define PNG_LIBPNG_BUILD_PRIVATE 16 /* Cannot be OR'ed with |
| 498 PNG_LIBPNG_BUILD_SPECIAL */ | 503 PNG_LIBPNG_BUILD_SPECIAL */ |
| 499 #define PNG_LIBPNG_BUILD_SPECIAL 32 /* Cannot be OR'ed with | 504 #define PNG_LIBPNG_BUILD_SPECIAL 32 /* Cannot be OR'ed with |
| 500 PNG_LIBPNG_BUILD_PRIVATE */ | 505 PNG_LIBPNG_BUILD_PRIVATE */ |
| 501 | 506 |
| 502 #define PNG_LIBPNG_BUILD_BASE_TYPE PNG_LIBPNG_BUILD_STABLE | 507 #define PNG_LIBPNG_BUILD_BASE_TYPE PNG_LIBPNG_BUILD_STABLE |
| 503 | 508 |
| 504 /* Careful here. At one time, Guy wanted to use 082, but that would be octal. | 509 /* Careful here. At one time, Guy wanted to use 082, but that would be octal. |
| 505 * We must not include leading zeros. | 510 * We must not include leading zeros. |
| 506 * Versions 0.7 through 1.0.0 were in the range 0 to 100 here (only | 511 * Versions 0.7 through 1.0.0 were in the range 0 to 100 here (only |
| 507 * version 1.0.0 was mis-numbered 100 instead of 10000). From | 512 * version 1.0.0 was mis-numbered 100 instead of 10000). From |
| 508 * version 1.0.1 it's xxyyzz, where x=major, y=minor, z=release | 513 * version 1.0.1 it's xxyyzz, where x=major, y=minor, z=release |
| 509 */ | 514 */ |
| 510 #define PNG_LIBPNG_VER 10244 /* 1.2.44 */ | 515 #define PNG_LIBPNG_VER 10245 /* 1.2.45 */ |
| 511 | 516 |
| 512 #ifndef PNG_VERSION_INFO_ONLY | 517 #ifndef PNG_VERSION_INFO_ONLY |
| 513 /* Include the compression library's header */ | 518 /* Include the compression library's header */ |
| 514 #include "zlib.h" | 519 #include "zlib.h" |
| 515 #endif | 520 #endif |
| 516 | 521 |
| 517 /* Include all user configurable info, including optional assembler routines */ | 522 /* Include all user configurable info, including optional assembler routines */ |
| 518 #include "pngconf.h" | 523 #include "pngconf.h" |
| 519 | 524 |
| 520 /* | 525 /* |
| (...skipping 1019 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1540 /* New member added in libpng-1.2.30 */ | 1545 /* New member added in libpng-1.2.30 */ |
| 1541 png_charp chunkdata PNG_DEPSTRUCT; /* buffer for reading chunk data */ | 1546 png_charp chunkdata PNG_DEPSTRUCT; /* buffer for reading chunk data */ |
| 1542 | 1547 |
| 1543 | 1548 |
| 1544 }; | 1549 }; |
| 1545 | 1550 |
| 1546 | 1551 |
| 1547 /* This triggers a compiler error in png.c, if png.c and png.h | 1552 /* This triggers a compiler error in png.c, if png.c and png.h |
| 1548 * do not agree upon the version number. | 1553 * do not agree upon the version number. |
| 1549 */ | 1554 */ |
| 1550 typedef png_structp version_1_2_44; | 1555 typedef png_structp version_1_2_45; |
| 1551 | 1556 |
| 1552 typedef png_struct FAR * FAR * png_structpp; | 1557 typedef png_struct FAR * FAR * png_structpp; |
| 1553 | 1558 |
| 1554 /* Here are the function definitions most commonly used. This is not | 1559 /* Here are the function definitions most commonly used. This is not |
| 1555 * the place to find out how to use libpng. See libpng.txt for the | 1560 * the place to find out how to use libpng. See libpng.txt for the |
| 1556 * full explanation, see example.c for the summary. This just provides | 1561 * full explanation, see example.c for the summary. This just provides |
| 1557 * a simple one line description of the use of each function. | 1562 * a simple one line description of the use of each function. |
| 1558 */ | 1563 */ |
| 1559 | 1564 |
| 1560 /* Returns the version number of the library */ | 1565 /* Returns the version number of the library */ |
| (...skipping 2218 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 3779 | 3784 |
| 3780 #endif /* PNG_INTERNAL */ | 3785 #endif /* PNG_INTERNAL */ |
| 3781 | 3786 |
| 3782 #ifdef __cplusplus | 3787 #ifdef __cplusplus |
| 3783 } | 3788 } |
| 3784 #endif | 3789 #endif |
| 3785 | 3790 |
| 3786 #endif /* PNG_VERSION_INFO_ONLY */ | 3791 #endif /* PNG_VERSION_INFO_ONLY */ |
| 3787 /* Do not put anything past this line */ | 3792 /* Do not put anything past this line */ |
| 3788 #endif /* PNG_H */ | 3793 #endif /* PNG_H */ |
| OLD | NEW |