23 #ifndef PNG_BUILDING_SYMBOL_TABLE 43 #ifdef PNG_STDIO_SUPPORTED 48 #ifdef PNG_SETJMP_SUPPORTED 53 #ifdef PNG_CONVERT_tIME_SUPPORTED 64 #define PNG_CONST const 72 #ifndef PNG_READ_INT_FUNCTIONS_SUPPORTED 73 # define PNG_USE_READ_MACROS 75 #if !defined(PNG_NO_USE_READ_MACROS) && !defined(PNG_USE_READ_MACROS) 76 # if PNG_DEFAULT_READ_MACROS 77 # define PNG_USE_READ_MACROS 94 # define PNGARG(arglist) arglist 183 #if defined(_Windows) || defined(_WINDOWS) || defined(WIN32) ||\ 184 defined(_WIN32) || defined(__WIN32__) || defined(__CYGWIN__) 190 # if PNG_API_RULE == 2 196 # define PNGCAPI __watcall 199 # if defined(__GNUC__) || (defined(_MSC_VER) && (_MSC_VER >= 800)) 200 # define PNGCAPI __cdecl 201 # if PNG_API_RULE == 1 205 # define PNGAPI __stdcall 213 # define PNGCAPI _cdecl 215 # if PNG_API_RULE == 1 && !defined(PNGAPI) 216 # define PNGAPI _stdcall 222 # if defined(PNGAPI) && !defined(PNG_USER_PRIVATEBUILD) 223 # error "PNG_USER_PRIVATEBUILD must be defined if PNGAPI is changed" 226 # if (defined(_MSC_VER) && _MSC_VER < 800) ||\ 227 (defined(__BORLANDC__) && __BORLANDC__ < 0x500) 232 # ifndef PNG_EXPORT_TYPE 233 # define PNG_EXPORT_TYPE(type) type PNG_IMPEXP 235 # define PNG_DLL_EXPORT __export 237 # define PNG_DLL_EXPORT __declspec(dllexport) 238 # ifndef PNG_DLL_IMPORT 239 # define PNG_DLL_IMPORT __declspec(dllimport) 244 # if (defined(__IBMC__) || defined(__IBMCPP__)) && defined(__OS2__) 245 # define PNGAPI _System 258 # define PNGCBAPI PNGCAPI 261 # define PNGAPI PNGCAPI 269 # if defined(PNG_USE_DLL) && defined(PNG_DLL_IMPORT) 271 # define PNG_IMPEXP PNG_DLL_IMPORT 287 # define PNG_FUNCTION(type, name, args, attributes) attributes type name args 290 #ifndef PNG_EXPORT_TYPE 291 # define PNG_EXPORT_TYPE(type) PNG_IMPEXP type 300 # define PNG_EXPORTA(ordinal, type, name, args, attributes) \ 301 PNG_FUNCTION(PNG_EXPORT_TYPE(type), (PNGAPI name), PNGARG(args), \ 302 PNG_LINKAGE_API attributes) 310 #define PNG_EXPORT(ordinal, type, name, args) \ 311 PNG_EXPORTA(ordinal, type, name, args, PNG_EMPTY) 315 # define PNG_REMOVED(ordinal, type, name, args, attributes) 319 # define PNG_CALLBACK(type, name, args) type (PNGCBAPI name) PNGARG(args) 329 #ifndef PNG_NO_PEDANTIC_WARNINGS 330 # ifndef PNG_PEDANTIC_WARNINGS_SUPPORTED 331 # define PNG_PEDANTIC_WARNINGS_SUPPORTED 335 #ifdef PNG_PEDANTIC_WARNINGS_SUPPORTED 342 # if defined(__clang__) && defined(__has_attribute) 344 # if !defined(PNG_USE_RESULT) && __has_attribute(__warn_unused_result__) 345 # define PNG_USE_RESULT __attribute__((__warn_unused_result__)) 347 # if !defined(PNG_NORETURN) && __has_attribute(__noreturn__) 348 # define PNG_NORETURN __attribute__((__noreturn__)) 350 # if !defined(PNG_ALLOCATED) && __has_attribute(__malloc__) 351 # define PNG_ALLOCATED __attribute__((__malloc__)) 353 # if !defined(PNG_DEPRECATED) && __has_attribute(__deprecated__) 354 # define PNG_DEPRECATED __attribute__((__deprecated__)) 356 # if !defined(PNG_PRIVATE) 357 # ifdef __has_extension 358 # if __has_extension(attribute_unavailable_with_message) 359 # define PNG_PRIVATE __attribute__((__unavailable__(\ 360 "This function is not exported by libpng."))) 364 # ifndef PNG_RESTRICT 365 # define PNG_RESTRICT __restrict 368 # elif defined(__GNUC__) 369 # ifndef PNG_USE_RESULT 370 # define PNG_USE_RESULT __attribute__((__warn_unused_result__)) 372 # ifndef PNG_NORETURN 373 # define PNG_NORETURN __attribute__((__noreturn__)) 376 # ifndef PNG_ALLOCATED 377 # define PNG_ALLOCATED __attribute__((__malloc__)) 379 # ifndef PNG_DEPRECATED 380 # define PNG_DEPRECATED __attribute__((__deprecated__)) 384 # define PNG_PRIVATE \ 385 __attribute__((warning("This function is not exported by libpng."))) 387 # define PNG_PRIVATE \ 388 __attribute__((__deprecated__)) 391 # if ((__GNUC__ > 3) || !defined(__GNUC_MINOR__) || (__GNUC_MINOR__ >= 1)) 392 # ifndef PNG_RESTRICT 393 # define PNG_RESTRICT __restrict 398 # elif defined(_MSC_VER) && (_MSC_VER >= 1300) 399 # ifndef PNG_USE_RESULT 400 # define PNG_USE_RESULT 402 # ifndef PNG_NORETURN 403 # define PNG_NORETURN __declspec(noreturn) 405 # ifndef PNG_ALLOCATED 406 # if (_MSC_VER >= 1400) 407 # define PNG_ALLOCATED __declspec(restrict) 410 # ifndef PNG_DEPRECATED 411 # define PNG_DEPRECATED __declspec(deprecated) 414 # define PNG_PRIVATE __declspec(deprecated) 416 # ifndef PNG_RESTRICT 417 # if (_MSC_VER >= 1400) 418 # define PNG_RESTRICT __restrict 422 # elif defined(__WATCOMC__) 423 # ifndef PNG_RESTRICT 424 # define PNG_RESTRICT __restrict 429 #ifndef PNG_DEPRECATED 430 # define PNG_DEPRECATED 432 #ifndef PNG_USE_RESULT 433 # define PNG_USE_RESULT 436 # define PNG_NORETURN 438 #ifndef PNG_ALLOCATED 439 # define PNG_ALLOCATED 445 # define PNG_RESTRICT 448 #ifndef PNG_FP_EXPORT 449 # ifdef PNG_FLOATING_POINT_SUPPORTED 450 # define PNG_FP_EXPORT(ordinal, type, name, args)\ 451 PNG_EXPORT(ordinal, type, name, args); 453 # define PNG_FP_EXPORT(ordinal, type, name, args) 456 #ifndef PNG_FIXED_EXPORT 457 # ifdef PNG_FIXED_POINT_SUPPORTED 458 # define PNG_FIXED_EXPORT(ordinal, type, name, args)\ 459 PNG_EXPORT(ordinal, type, name, args); 461 # define PNG_FIXED_EXPORT(ordinal, type, name, args) 465 #ifndef PNG_BUILDING_SYMBOL_TABLE 480 #if CHAR_BIT == 8 && UCHAR_MAX == 255 481 typedef unsigned char png_byte;
483 # error "libpng requires 8-bit bytes" 486 #if INT_MIN == -32768 && INT_MAX == 32767 487 typedef int png_int_16;
488 #elif SHRT_MIN == -32768 && SHRT_MAX == 32767 489 typedef short png_int_16;
491 # error "libpng requires a signed 16-bit type" 494 #if UINT_MAX == 65535 495 typedef unsigned int png_uint_16;
496 #elif USHRT_MAX == 65535 497 typedef unsigned short png_uint_16;
499 # error "libpng requires an unsigned 16-bit type" 502 #if INT_MIN < -2147483646 && INT_MAX > 2147483646 503 typedef int png_int_32;
504 #elif LONG_MIN < -2147483646 && LONG_MAX > 2147483646 505 typedef long int png_int_32;
507 # error "libpng requires a signed 32-bit (or more) type" 510 #if UINT_MAX > 4294967294 512 #elif ULONG_MAX > 4294967294 515 # error "libpng requires an unsigned 32-bit (or more) type" 529 #ifndef PNG_SMALL_SIZE_T 534 # if (defined(__TURBOC__) && !defined(__FLAT__)) ||\ 535 (defined(_MSC_VER) && defined(MAXSEG_64K)) 536 # define PNG_SMALL_SIZE_T 553 #ifdef PNG_SMALL_SIZE_T 595 #ifdef PNG_STDIO_SUPPORTED 596 typedef FILE * png_FILE_p;
599 #ifdef PNG_FLOATING_POINT_SUPPORTED 600 typedef double * png_doublep;
601 typedef const double * png_const_doublep;
613 #ifdef PNG_FLOATING_POINT_SUPPORTED 614 typedef double * * png_doublepp;
const png_size_t * png_const_size_tp
const char * png_const_charp
png_uint_32 ** png_uint_32pp
const png_uint_32 * png_const_uint_32p
png_int_32 ** png_int_32pp
png_size_t png_alloc_size_t
const png_int_32 * png_const_int_32p
png_int_32 png_fixed_point
const png_byte * png_const_bytep
const png_uint_16 * png_const_uint_16p
const png_int_16 * png_const_int_16p
const void * png_const_voidp
png_uint_32 * png_uint_32p
png_uint_16 ** png_uint_16pp
png_int_16 ** png_int_16pp
png_uint_16 * png_uint_16p
png_fixed_point ** png_fixed_point_pp
png_fixed_point * png_fixed_point_p
const char ** png_const_charpp
const png_fixed_point * png_const_fixed_point_p