382 #define PNG_LIBPNG_VER_STRING "1.5.9"
383 #define PNG_HEADER_VERSION_STRING \
384 " libpng version 1.5.9 - February 18, 2012\n"
386 #define PNG_LIBPNG_VER_SONUM 15
387 #define PNG_LIBPNG_VER_DLLNUM 15
390 #define PNG_LIBPNG_VER_MAJOR 1
391 #define PNG_LIBPNG_VER_MINOR 5
392 #define PNG_LIBPNG_VER_RELEASE 9
398 #define PNG_LIBPNG_VER_BUILD 0
401 #define PNG_LIBPNG_BUILD_ALPHA 1
402 #define PNG_LIBPNG_BUILD_BETA 2
403 #define PNG_LIBPNG_BUILD_RC 3
404 #define PNG_LIBPNG_BUILD_STABLE 4
405 #define PNG_LIBPNG_BUILD_RELEASE_STATUS_MASK 7
408 #define PNG_LIBPNG_BUILD_PATCH 8
410 #define PNG_LIBPNG_BUILD_PRIVATE 16
412 #define PNG_LIBPNG_BUILD_SPECIAL 32
415 #define PNG_LIBPNG_BUILD_BASE_TYPE PNG_LIBPNG_BUILD_BETA
423 #define PNG_LIBPNG_VER 10509
435 #ifndef PNG_VERSION_INFO_ONLY
436 # ifndef PNG_BUILDING_SYMBOL_TABLE
441 # ifdef PNG_SETJMP_SUPPORTED
448 # ifdef PNG_CONVERT_tIME_SUPPORTED
472 #ifdef PNG_USER_PRIVATEBUILD
473 # define PNG_LIBPNG_BUILD_TYPE \
474 (PNG_LIBPNG_BUILD_BASE_TYPE | PNG_LIBPNG_BUILD_PRIVATE)
476 # ifdef PNG_LIBPNG_SPECIALBUILD
477 # define PNG_LIBPNG_BUILD_TYPE \
478 (PNG_LIBPNG_BUILD_BASE_TYPE | PNG_LIBPNG_BUILD_SPECIAL)
480 # define PNG_LIBPNG_BUILD_TYPE (PNG_LIBPNG_BUILD_BASE_TYPE)
484 #ifndef PNG_VERSION_INFO_ONLY
494 #define png_libpng_ver png_get_header_ver(NULL)
617 #ifdef PNG_TEXT_SUPPORTED
659 #define PNG_TEXT_COMPRESSION_NONE_WR -3
660 #define PNG_TEXT_COMPRESSION_zTXt_WR -2
661 #define PNG_TEXT_COMPRESSION_NONE -1
662 #define PNG_TEXT_COMPRESSION_zTXt 0
663 #define PNG_ITXT_COMPRESSION_NONE 1
664 #define PNG_ITXT_COMPRESSION_zTXt 2
665 #define PNG_TEXT_COMPRESSION_LAST 3
686 #if defined(PNG_UNKNOWN_CHUNKS_SUPPORTED) || \
687 defined(PNG_HANDLE_AS_UNKNOWN_SUPPORTED)
712 #define PNG_HAVE_IHDR 0x01
713 #define PNG_HAVE_PLTE 0x02
714 #define PNG_AFTER_IDAT 0x08
726 #define PNG_UINT_31_MAX ((png_uint_32)0x7fffffffL)
727 #define PNG_UINT_32_MAX ((png_uint_32)(-1))
728 #define PNG_SIZE_MAX ((png_size_t)(-1))
733 #define PNG_FP_1 100000
734 #define PNG_FP_HALF 50000
735 #define PNG_FP_MAX ((png_fixed_point)0x7fffffffL)
736 #define PNG_FP_MIN (-PNG_FP_MAX)
740 #define PNG_COLOR_MASK_PALETTE 1
741 #define PNG_COLOR_MASK_COLOR 2
742 #define PNG_COLOR_MASK_ALPHA 4
745 #define PNG_COLOR_TYPE_GRAY 0
746 #define PNG_COLOR_TYPE_PALETTE (PNG_COLOR_MASK_COLOR | PNG_COLOR_MASK_PALETTE)
747 #define PNG_COLOR_TYPE_RGB (PNG_COLOR_MASK_COLOR)
748 #define PNG_COLOR_TYPE_RGB_ALPHA (PNG_COLOR_MASK_COLOR | PNG_COLOR_MASK_ALPHA)
749 #define PNG_COLOR_TYPE_GRAY_ALPHA (PNG_COLOR_MASK_ALPHA)
751 #define PNG_COLOR_TYPE_RGBA PNG_COLOR_TYPE_RGB_ALPHA
752 #define PNG_COLOR_TYPE_GA PNG_COLOR_TYPE_GRAY_ALPHA
755 #define PNG_COMPRESSION_TYPE_BASE 0
756 #define PNG_COMPRESSION_TYPE_DEFAULT PNG_COMPRESSION_TYPE_BASE
759 #define PNG_FILTER_TYPE_BASE 0
760 #define PNG_INTRAPIXEL_DIFFERENCING 64
761 #define PNG_FILTER_TYPE_DEFAULT PNG_FILTER_TYPE_BASE
764 #define PNG_INTERLACE_NONE 0
765 #define PNG_INTERLACE_ADAM7 1
766 #define PNG_INTERLACE_LAST 2
769 #define PNG_OFFSET_PIXEL 0
770 #define PNG_OFFSET_MICROMETER 1
771 #define PNG_OFFSET_LAST 2
774 #define PNG_EQUATION_LINEAR 0
775 #define PNG_EQUATION_BASE_E 1
776 #define PNG_EQUATION_ARBITRARY 2
777 #define PNG_EQUATION_HYPERBOLIC 3
778 #define PNG_EQUATION_LAST 4
781 #define PNG_SCALE_UNKNOWN 0
782 #define PNG_SCALE_METER 1
783 #define PNG_SCALE_RADIAN 2
784 #define PNG_SCALE_LAST 3
787 #define PNG_RESOLUTION_UNKNOWN 0
788 #define PNG_RESOLUTION_METER 1
789 #define PNG_RESOLUTION_LAST 2
792 #define PNG_sRGB_INTENT_PERCEPTUAL 0
793 #define PNG_sRGB_INTENT_RELATIVE 1
794 #define PNG_sRGB_INTENT_SATURATION 2
795 #define PNG_sRGB_INTENT_ABSOLUTE 3
796 #define PNG_sRGB_INTENT_LAST 4
799 #define PNG_KEYWORD_MAX_LENGTH 79
802 #define PNG_MAX_PALETTE_LENGTH 256
809 #define PNG_INFO_gAMA 0x0001
810 #define PNG_INFO_sBIT 0x0002
811 #define PNG_INFO_cHRM 0x0004
812 #define PNG_INFO_PLTE 0x0008
813 #define PNG_INFO_tRNS 0x0010
814 #define PNG_INFO_bKGD 0x0020
815 #define PNG_INFO_hIST 0x0040
816 #define PNG_INFO_pHYs 0x0080
817 #define PNG_INFO_oFFs 0x0100
818 #define PNG_INFO_tIME 0x0200
819 #define PNG_INFO_pCAL 0x0400
820 #define PNG_INFO_sRGB 0x0800
821 #define PNG_INFO_iCCP 0x1000
822 #define PNG_INFO_sPLT 0x2000
823 #define PNG_INFO_sCAL 0x4000
824 #define PNG_INFO_IDAT 0x8000
861 typedef PNG_CALLBACK(
void, *png_flush_ptr, (png_structp));
867 #ifdef PNG_PROGRESSIVE_READ_SUPPORTED
868 typedef PNG_CALLBACK(
void, *png_progressive_info_ptr, (png_structp, png_infop));
869 typedef PNG_CALLBACK(
void, *png_progressive_end_ptr, (png_structp, png_infop));
885 #if defined(PNG_READ_USER_TRANSFORM_SUPPORTED) || \
886 defined(PNG_WRITE_USER_TRANSFORM_SUPPORTED)
887 typedef PNG_CALLBACK(
void, *png_user_transform_ptr, (png_structp, png_row_infop,
891 #ifdef PNG_USER_CHUNKS_SUPPORTED
892 typedef PNG_CALLBACK(
int, *png_user_chunk_ptr, (png_structp,
893 png_unknown_chunkp));
895 #ifdef PNG_UNKNOWN_CHUNKS_SUPPORTED
896 typedef PNG_CALLBACK(
void, *png_unknown_chunk_ptr, (png_structp));
899 #ifdef PNG_SETJMP_SUPPORTED
915 #define PNG_TRANSFORM_IDENTITY 0x0000
916 #define PNG_TRANSFORM_STRIP_16 0x0001
917 #define PNG_TRANSFORM_STRIP_ALPHA 0x0002
918 #define PNG_TRANSFORM_PACKING 0x0004
919 #define PNG_TRANSFORM_PACKSWAP 0x0008
920 #define PNG_TRANSFORM_EXPAND 0x0010
921 #define PNG_TRANSFORM_INVERT_MONO 0x0020
922 #define PNG_TRANSFORM_SHIFT 0x0040
923 #define PNG_TRANSFORM_BGR 0x0080
924 #define PNG_TRANSFORM_SWAP_ALPHA 0x0100
925 #define PNG_TRANSFORM_SWAP_ENDIAN 0x0200
926 #define PNG_TRANSFORM_INVERT_ALPHA 0x0400
927 #define PNG_TRANSFORM_STRIP_FILLER 0x0800
929 #define PNG_TRANSFORM_STRIP_FILLER_BEFORE PNG_TRANSFORM_STRIP_FILLER
930 #define PNG_TRANSFORM_STRIP_FILLER_AFTER 0x1000
932 #define PNG_TRANSFORM_GRAY_TO_RGB 0x2000
934 #define PNG_TRANSFORM_EXPAND_16 0x4000
935 #define PNG_TRANSFORM_SCALE_16 0x8000
938 #define PNG_FLAG_MNG_EMPTY_PLTE 0x01
939 #define PNG_FLAG_MNG_FILTER_64 0x04
940 #define PNG_ALL_MNG_FEATURES 0x05
1002 #define png_check_sig(sig, n) !png_sig_cmp((sig), 0, (n))
1005 PNG_EXPORTA(4, png_structp, png_create_read_struct,
1007 png_error_ptr
error_fn, png_error_ptr warn_fn),
1011 PNG_EXPORTA(5, png_structp, png_create_write_struct,
1013 png_error_ptr warn_fn),
1017 (png_const_structp png_ptr));
1025 #ifdef PNG_SETJMP_SUPPORTED
1034 png_longjmp_ptr longjmp_fn,
size_t jmp_buf_size));
1035 # define png_jmpbuf(png_ptr) \
1036 (*png_set_longjmp_fn((png_ptr), longjmp, sizeof (jmp_buf)))
1038 # define png_jmpbuf(png_ptr) \
1039 (LIBPNG_WAS_COMPILED_WITH__PNG_NO_SETJMP)
1046 PNG_EXPORTA(9,
void, png_longjmp, (png_structp png_ptr,
int val),
1049 #ifdef PNG_READ_SUPPORTED
1055 #ifdef PNG_USER_MEM_SUPPORTED
1056 PNG_EXPORTA(11, png_structp, png_create_read_struct_2,
1058 png_error_ptr warn_fn,
1059 png_voidp mem_ptr, png_malloc_ptr malloc_fn, png_free_ptr free_fn),
1061 PNG_EXPORTA(12, png_structp, png_create_write_struct_2,
1063 png_error_ptr warn_fn,
1064 png_voidp mem_ptr, png_malloc_ptr malloc_fn, png_free_ptr free_fn),
1087 PNG_EXPORTA(18, png_infop, png_create_info_struct, (png_structp png_ptr),
1095 (png_structp png_ptr, png_infop info_ptr));
1097 (png_structp png_ptr, png_infop info_ptr));
1099 #ifdef PNG_SEQUENTIAL_READ_SUPPORTED
1102 (png_structp png_ptr, png_infop info_ptr));
1105 #ifdef PNG_TIME_RFC1123_SUPPORTED
1107 (png_structp png_ptr,
1108 png_const_timep ptime));
1111 #ifdef PNG_CONVERT_tIME_SUPPORTED
1118 (png_timep ptime, time_t ttime));
1121 #ifdef PNG_READ_EXPAND_SUPPORTED
1129 #ifdef PNG_READ_EXPAND_16_SUPPORTED
1136 #if defined(PNG_READ_BGR_SUPPORTED) || defined(PNG_WRITE_BGR_SUPPORTED)
1141 #ifdef PNG_READ_GRAY_TO_RGB_SUPPORTED
1146 #ifdef PNG_READ_RGB_TO_GRAY_SUPPORTED
1148 #define PNG_ERROR_ACTION_NONE 1
1149 #define PNG_ERROR_ACTION_WARN 2
1150 #define PNG_ERROR_ACTION_ERROR 3
1151 #define PNG_RGB_TO_GRAY_DEFAULT (-1)
1154 int error_action,
double red,
double green));
1162 #ifdef PNG_BUILD_GRAYSCALE_PALETTE_SUPPORTED
1167 #ifdef PNG_READ_ALPHA_MODE_SUPPORTED
1216 #define PNG_ALPHA_PNG 0
1217 #define PNG_ALPHA_STANDARD 1
1218 #define PNG_ALPHA_ASSOCIATED 1
1219 #define PNG_ALPHA_PREMULTIPLIED 1
1220 #define PNG_ALPHA_OPTIMIZED 2
1221 #define PNG_ALPHA_BROKEN 3
1224 double output_gamma));
1229 #if defined(PNG_READ_GAMMA_SUPPORTED) || defined(PNG_READ_ALPHA_MODE_SUPPORTED)
1294 #define PNG_DEFAULT_sRGB -1
1295 #define PNG_GAMMA_MAC_18 -2
1296 #define PNG_GAMMA_sRGB 220000
1297 #define PNG_GAMMA_LINEAR PNG_FP_1
1376 #ifdef PNG_READ_STRIP_ALPHA_SUPPORTED
1380 #if defined(PNG_READ_SWAP_ALPHA_SUPPORTED) || \
1381 defined(PNG_WRITE_SWAP_ALPHA_SUPPORTED)
1385 #if defined(PNG_READ_INVERT_ALPHA_SUPPORTED) || \
1386 defined(PNG_WRITE_INVERT_ALPHA_SUPPORTED)
1390 #if defined(PNG_READ_FILLER_SUPPORTED) || defined(PNG_WRITE_FILLER_SUPPORTED)
1395 # define PNG_FILLER_BEFORE 0
1396 # define PNG_FILLER_AFTER 1
1403 #if defined(PNG_READ_SWAP_SUPPORTED) || defined(PNG_WRITE_SWAP_SUPPORTED)
1408 #if defined(PNG_READ_PACK_SUPPORTED) || defined(PNG_WRITE_PACK_SUPPORTED)
1413 #if defined(PNG_READ_PACKSWAP_SUPPORTED) || \
1414 defined(PNG_WRITE_PACKSWAP_SUPPORTED)
1419 #if defined(PNG_READ_SHIFT_SUPPORTED) || defined(PNG_WRITE_SHIFT_SUPPORTED)
1425 #if defined(PNG_READ_INTERLACING_SUPPORTED) || \
1426 defined(PNG_WRITE_INTERLACING_SUPPORTED)
1436 #if defined(PNG_READ_INVERT_SUPPORTED) || defined(PNG_WRITE_INVERT_SUPPORTED)
1441 #ifdef PNG_READ_BACKGROUND_SUPPORTED
1448 png_const_color_16p background_color,
int background_gamma_code,
1449 int need_expand,
double background_gamma));
1451 png_const_color_16p background_color,
int background_gamma_code,
1454 #ifdef PNG_READ_BACKGROUND_SUPPORTED
1455 # define PNG_BACKGROUND_GAMMA_UNKNOWN 0
1456 # define PNG_BACKGROUND_GAMMA_SCREEN 1
1457 # define PNG_BACKGROUND_GAMMA_FILE 2
1458 # define PNG_BACKGROUND_GAMMA_UNIQUE 3
1461 #ifdef PNG_READ_SCALE_16_TO_8_SUPPORTED
1466 #ifdef PNG_READ_STRIP_16_TO_8_SUPPORTED
1467 #define PNG_READ_16_TO_8 SUPPORTED
1472 #ifdef PNG_READ_QUANTIZE_SUPPORTED
1477 (png_structp png_ptr, png_colorp
palette,
1479 int full_quantize));
1482 #ifdef PNG_READ_GAMMA_SUPPORTED
1486 #define PNG_GAMMA_THRESHOLD (PNG_GAMMA_THRESHOLD_FIXED*.00001)
1500 (png_structp png_ptr,
double screen_gamma,
1501 double override_file_gamma));
1506 #ifdef PNG_WRITE_FLUSH_SUPPORTED
1518 (png_structp png_ptr, png_infop info_ptr));
1520 #ifdef PNG_SEQUENTIAL_READ_SUPPORTED
1526 #ifdef PNG_SEQUENTIAL_READ_SUPPORTED
1532 #ifdef PNG_SEQUENTIAL_READ_SUPPORTED
1555 (png_structp png_ptr, png_infop info_ptr));
1557 #ifdef PNG_SEQUENTIAL_READ_SUPPORTED
1564 png_infopp info_ptr_ptr));
1568 png_infopp info_ptr_ptr, png_infopp end_info_ptr_ptr));
1572 png_infopp info_ptr_ptr));
1576 (png_structp png_ptr,
int crit_action,
int ancil_action));
1587 #define PNG_CRC_DEFAULT 0
1588 #define PNG_CRC_ERROR_QUIT 1
1589 #define PNG_CRC_WARN_DISCARD 2
1590 #define PNG_CRC_WARN_USE 3
1591 #define PNG_CRC_QUIET_USE 4
1592 #define PNG_CRC_NO_CHANGE 5
1606 (png_structp png_ptr,
int method,
int filters));
1613 #define PNG_NO_FILTERS 0x00
1614 #define PNG_FILTER_NONE 0x08
1615 #define PNG_FILTER_SUB 0x10
1616 #define PNG_FILTER_UP 0x20
1617 #define PNG_FILTER_AVG 0x40
1618 #define PNG_FILTER_PAETH 0x80
1619 #define PNG_ALL_FILTERS (PNG_FILTER_NONE | PNG_FILTER_SUB | PNG_FILTER_UP | \
1620 PNG_FILTER_AVG | PNG_FILTER_PAETH)
1625 #define PNG_FILTER_VALUE_NONE 0
1626 #define PNG_FILTER_VALUE_SUB 1
1627 #define PNG_FILTER_VALUE_UP 2
1628 #define PNG_FILTER_VALUE_AVG 3
1629 #define PNG_FILTER_VALUE_PAETH 4
1630 #define PNG_FILTER_VALUE_LAST 5
1632 #ifdef PNG_WRITE_WEIGHTED_FILTER_SUPPORTED
1662 int heuristic_method,
int num_weights, png_const_doublep filter_weights,
1663 png_const_doublep filter_costs));
1665 (png_structp png_ptr,
1673 #define PNG_FILTER_HEURISTIC_DEFAULT 0
1674 #define PNG_FILTER_HEURISTIC_UNWEIGHTED 1
1675 #define PNG_FILTER_HEURISTIC_WEIGHTED 2
1676 #define PNG_FILTER_HEURISTIC_LAST 3
1678 #ifdef PNG_WRITE_SUPPORTED
1687 (png_structp png_ptr,
int level));
1705 #ifdef PNG_WRITE_CUSTOMIZE_ZTXT_COMPRESSION_SUPPORTED
1708 (png_structp png_ptr,
int level));
1720 png_ptr,
int window_bits));
1735 #ifdef PNG_STDIO_SUPPORTED
1750 png_error_ptr
error_fn, png_error_ptr warning_fn));
1781 #ifdef PNG_USER_MEM_SUPPORTED
1784 png_malloc_ptr malloc_fn, png_free_ptr free_fn));
1789 #ifdef PNG_READ_USER_TRANSFORM_SUPPORTED
1791 png_user_transform_ptr read_user_transform_fn));
1794 #ifdef PNG_WRITE_USER_TRANSFORM_SUPPORTED
1796 png_user_transform_ptr write_user_transform_fn));
1799 #ifdef PNG_USER_TRANSFORM_PTR_SUPPORTED
1801 png_voidp user_transform_ptr,
int user_transform_depth,
1802 int user_transform_channels));
1805 (png_const_structp png_ptr));
1808 #ifdef PNG_USER_TRANSFORM_INFO_SUPPORTED
1824 #ifdef PNG_USER_CHUNKS_SUPPORTED
1826 png_voidp user_chunk_ptr, png_user_chunk_ptr read_user_chunk_fn));
1830 #ifdef PNG_PROGRESSIVE_READ_SUPPORTED
1835 png_voidp progressive_ptr, png_progressive_info_ptr info_fn,
1836 png_progressive_row_ptr row_fn, png_progressive_end_ptr end_fn));
1843 (png_structp png_ptr, png_infop info_ptr,
1863 #ifdef PNG_READ_INTERLACING_SUPPORTED
1896 (png_structp png_ptr, png_infop info_ptr,
int freer,
png_uint_32 mask));
1899 #define PNG_DESTROY_WILL_FREE_DATA 1
1900 #define PNG_SET_WILL_FREE_DATA 1
1901 #define PNG_USER_WILL_FREE_DATA 2
1903 #define PNG_FREE_HIST 0x0008
1904 #define PNG_FREE_ICCP 0x0010
1905 #define PNG_FREE_SPLT 0x0020
1906 #define PNG_FREE_ROWS 0x0040
1907 #define PNG_FREE_PCAL 0x0080
1908 #define PNG_FREE_SCAL 0x0100
1909 #define PNG_FREE_UNKN 0x0200
1910 #define PNG_FREE_LIST 0x0400
1911 #define PNG_FREE_PLTE 0x1000
1912 #define PNG_FREE_TRNS 0x2000
1913 #define PNG_FREE_TEXT 0x4000
1914 #define PNG_FREE_ALL 0x7fff
1915 #define PNG_FREE_MUL 0x4220
1917 #ifdef PNG_USER_MEM_SUPPORTED
1923 #ifdef PNG_ERROR_TEXT_SUPPORTED
1930 PNG_EXPORTA(103,
void, png_chunk_error, (png_structp png_ptr,
1938 #ifdef PNG_WARNINGS_SUPPORTED
1948 #ifdef PNG_BENIGN_ERRORS_SUPPORTED
1951 # undef png_benign_error
1956 # undef png_chunk_benign_error
1961 (png_structp png_ptr,
int allowed));
1963 # ifdef PNG_ALLOW_BENIGN_ERRORS
1964 # define png_benign_error png_warning
1965 # define png_chunk_benign_error png_chunk_warning
1967 # define png_benign_error png_error
1968 # define png_chunk_benign_error png_chunk_error
1986 (png_const_structp png_ptr, png_const_infop info_ptr,
1991 png_const_infop info_ptr));
1993 #ifdef PNG_INFO_IMAGE_SUPPORTED
1998 (png_const_structp png_ptr, png_const_infop info_ptr));
2003 png_infop info_ptr,
png_bytepp row_pointers));
2008 (png_const_structp png_ptr, png_const_infop info_ptr));
2010 #ifdef PNG_EASY_ACCESS_SUPPORTED
2013 png_const_infop info_ptr));
2017 png_const_infop info_ptr));
2021 (png_const_structp png_ptr, png_const_infop info_ptr));
2025 png_const_infop info_ptr));
2029 png_const_infop info_ptr));
2033 png_const_infop info_ptr));
2037 png_const_infop info_ptr));
2041 (png_const_structp png_ptr, png_const_infop info_ptr));
2043 (png_const_structp png_ptr, png_const_infop info_ptr));
2045 (png_const_structp png_ptr, png_const_infop info_ptr));
2049 (png_const_structp png_ptr, png_const_infop info_ptr));
2051 (png_const_structp png_ptr, png_const_infop info_ptr));
2055 (png_const_structp png_ptr, png_const_infop info_ptr));
2057 (png_const_structp png_ptr, png_const_infop info_ptr));
2059 (png_const_structp png_ptr, png_const_infop info_ptr));
2061 (png_const_structp png_ptr, png_const_infop info_ptr));
2067 (png_const_structp png_ptr, png_infop info_ptr));
2069 #ifdef PNG_bKGD_SUPPORTED
2071 (png_const_structp png_ptr, png_infop info_ptr,
2072 png_color_16p *background));
2075 #ifdef PNG_bKGD_SUPPORTED
2077 png_const_color_16p background));
2080 #ifdef PNG_cHRM_SUPPORTED
2082 png_const_infop info_ptr,
double *white_x,
double *white_y,
double *red_x,
2083 double *red_y,
double *green_x,
double *green_y,
double *blue_x,
2086 png_const_infop info_ptr,
double *red_X,
double *red_Y,
double *red_Z,
2087 double *green_X,
double *green_Y,
double *green_Z,
double *blue_X,
2088 double *blue_Y,
double *blue_Z));
2089 #ifdef PNG_FIXED_POINT_SUPPORTED
2091 (png_const_structp png_ptr,
2099 (png_structp png_ptr, png_const_infop info_ptr,
2107 #ifdef PNG_cHRM_SUPPORTED
2109 (png_structp png_ptr, png_infop info_ptr,
2110 double white_x,
double white_y,
double red_x,
double red_y,
double green_x,
2111 double green_y,
double blue_x,
double blue_y));
2113 png_infop info_ptr,
double red_X,
double red_Y,
double red_Z,
2114 double green_X,
double green_Y,
double green_Z,
double blue_X,
2115 double blue_Y,
double blue_Z));
2130 #ifdef PNG_gAMA_SUPPORTED
2132 (png_const_structp png_ptr, png_const_infop info_ptr,
2133 double *file_gamma));
2135 (png_const_structp png_ptr, png_const_infop info_ptr,
2139 #ifdef PNG_gAMA_SUPPORTED
2141 png_infop info_ptr,
double file_gamma));
2146 #ifdef PNG_hIST_SUPPORTED
2148 (png_const_structp png_ptr, png_const_infop info_ptr,
2152 #ifdef PNG_hIST_SUPPORTED
2158 (png_structp png_ptr, png_infop info_ptr,
2160 int *interlace_method,
int *compression_method,
int *filter_method));
2163 (png_structp png_ptr, png_infop info_ptr,
2165 int interlace_method,
int compression_method,
int filter_method));
2167 #ifdef PNG_oFFs_SUPPORTED
2169 (png_const_structp png_ptr, png_const_infop info_ptr,
2173 #ifdef PNG_oFFs_SUPPORTED
2175 (png_structp png_ptr, png_infop info_ptr,
2179 #ifdef PNG_pCAL_SUPPORTED
2181 (png_const_structp png_ptr, png_const_infop info_ptr,
2187 #ifdef PNG_pCAL_SUPPORTED
2194 #ifdef PNG_pHYs_SUPPORTED
2196 (png_const_structp png_ptr, png_const_infop info_ptr,
2200 #ifdef PNG_pHYs_SUPPORTED
2202 (png_structp png_ptr, png_infop info_ptr,
2207 (png_const_structp png_ptr, png_const_infop info_ptr,
2211 (png_structp png_ptr, png_infop info_ptr,
2214 #ifdef PNG_sBIT_SUPPORTED
2216 (png_const_structp png_ptr, png_infop info_ptr,
2217 png_color_8p *sig_bit));
2220 #ifdef PNG_sBIT_SUPPORTED
2222 (png_structp png_ptr, png_infop info_ptr, png_const_color_8p sig_bit));
2225 #ifdef PNG_sRGB_SUPPORTED
2227 png_const_infop info_ptr,
int *file_srgb_intent));
2230 #ifdef PNG_sRGB_SUPPORTED
2232 (png_structp png_ptr, png_infop info_ptr,
int srgb_intent));
2234 png_infop info_ptr,
int srgb_intent));
2237 #ifdef PNG_iCCP_SUPPORTED
2239 (png_const_structp png_ptr, png_const_infop info_ptr,
2244 #ifdef PNG_iCCP_SUPPORTED
2246 (png_structp png_ptr, png_infop info_ptr,
2251 #ifdef PNG_sPLT_SUPPORTED
2253 (png_const_structp png_ptr, png_const_infop info_ptr,
2257 #ifdef PNG_sPLT_SUPPORTED
2259 (png_structp png_ptr, png_infop info_ptr,
2263 #ifdef PNG_TEXT_SUPPORTED
2266 (png_const_structp png_ptr, png_const_infop info_ptr,
2267 png_textp *text_ptr,
int *num_text));
2277 #ifdef PNG_TEXT_SUPPORTED
2279 (png_structp png_ptr, png_infop info_ptr,
2280 png_const_textp text_ptr,
int num_text));
2283 #ifdef PNG_tIME_SUPPORTED
2285 (png_const_structp png_ptr, png_infop info_ptr, png_timep *mod_time));
2288 #ifdef PNG_tIME_SUPPORTED
2290 (png_structp png_ptr, png_infop info_ptr, png_const_timep mod_time));
2293 #ifdef PNG_tRNS_SUPPORTED
2295 (png_const_structp png_ptr, png_infop info_ptr,
2299 #ifdef PNG_tRNS_SUPPORTED
2301 (png_structp png_ptr, png_infop info_ptr,
2303 png_const_color_16p trans_color));
2306 #ifdef PNG_sCAL_SUPPORTED
2308 (png_const_structp png_ptr, png_const_infop info_ptr,
2310 #ifdef PNG_FLOATING_ARITHMETIC_SUPPORTED
2317 (png_structp png_ptr, png_const_infop info_ptr,
int *unit,
2322 (png_const_structp png_ptr, png_const_infop info_ptr,
2326 (png_structp png_ptr, png_infop info_ptr,
2332 (png_structp png_ptr, png_infop info_ptr,
2336 #ifdef PNG_HANDLE_AS_UNKNOWN_SUPPORTED
2349 (png_structp png_ptr,
int keep,
2358 #ifdef PNG_UNKNOWN_CHUNKS_SUPPORTED
2360 png_infop info_ptr, png_const_unknown_chunkp unknowns,
2363 (png_structp png_ptr, png_infop info_ptr,
int chunk,
int location));
2365 png_const_infop info_ptr, png_unknown_chunkpp
entries));
2373 (png_structp png_ptr, png_infop info_ptr,
int mask));
2375 #ifdef PNG_INFO_IMAGE_SUPPORTED
2384 (png_const_structp png_ptr));
2386 (png_const_structp png_ptr));
2388 (png_const_structp png_ptr));
2390 (png_const_structp png_ptr));
2392 #ifdef PNG_MNG_FEATURES_SUPPORTED
2398 #define PNG_HANDLE_CHUNK_AS_DEFAULT 0
2399 #define PNG_HANDLE_CHUNK_NEVER 1
2400 #define PNG_HANDLE_CHUNK_IF_SAFE 2
2401 #define PNG_HANDLE_CHUNK_ALWAYS 3
2406 #ifdef PNG_ERROR_NUMBERS_SUPPORTED
2407 PNG_EXPORT(185,
void, png_set_strip_error_numbers,
2408 (png_structp png_ptr,
2413 #ifdef PNG_SET_USER_LIMITS_SUPPORTED
2417 (png_const_structp png_ptr));
2419 (png_const_structp png_ptr));
2424 (png_const_structp png_ptr));
2429 (png_const_structp png_ptr));
2432 #if defined(PNG_INCH_CONVERSIONS_SUPPORTED)
2434 (png_const_structp png_ptr, png_const_infop info_ptr));
2437 (png_const_structp png_ptr, png_const_infop info_ptr));
2440 (png_const_structp png_ptr, png_const_infop info_ptr));
2443 (png_const_structp png_ptr, png_const_infop info_ptr));
2444 #ifdef PNG_FIXED_POINT_SUPPORTED
2446 (png_structp png_ptr, png_const_infop info_ptr));
2450 png_const_infop info_ptr));
2451 #ifdef PNG_FIXED_POINT_SUPPORTED
2453 (png_structp png_ptr, png_const_infop info_ptr));
2456 # ifdef PNG_pHYs_SUPPORTED
2464 #ifdef PNG_IO_STATE_SUPPORTED
2470 (png_const_structp png_ptr));
2473 # define PNG_IO_NONE 0x0000
2474 # define PNG_IO_READING 0x0001
2475 # define PNG_IO_WRITING 0x0002
2476 # define PNG_IO_SIGNATURE 0x0010
2477 # define PNG_IO_CHUNK_HDR 0x0020
2478 # define PNG_IO_CHUNK_DATA 0x0040
2479 # define PNG_IO_CHUNK_CRC 0x0080
2480 # define PNG_IO_MASK_OP 0x000f
2481 # define PNG_IO_MASK_LOC 0x00f0
2488 #define PNG_INTERLACE_ADAM7_PASSES 7
2494 #define PNG_PASS_START_ROW(pass) (((1&~(pass))<<(3-((pass)>>1)))&7)
2495 #define PNG_PASS_START_COL(pass) (((1& (pass))<<(3-(((pass)+1)>>1)))&7)
2502 #define PNG_PASS_ROW_OFFSET(pass) ((pass)>2?(8>>(((pass)-1)>>1)):8)
2503 #define PNG_PASS_COL_OFFSET(pass) (1<<((7-(pass))>>1))
2509 #define PNG_PASS_ROW_SHIFT(pass) ((pass)>2?(8-(pass))>>1:3)
2510 #define PNG_PASS_COL_SHIFT(pass) ((pass)>1?(7-(pass))>>1:3)
2517 #define PNG_PASS_ROWS(height, pass) (((height)+(((1<<PNG_PASS_ROW_SHIFT(pass))\
2518 -1)-PNG_PASS_START_ROW(pass)))>>PNG_PASS_ROW_SHIFT(pass))
2519 #define PNG_PASS_COLS(width, pass) (((width)+(((1<<PNG_PASS_COL_SHIFT(pass))\
2520 -1)-PNG_PASS_START_COL(pass)))>>PNG_PASS_COL_SHIFT(pass))
2526 #define PNG_ROW_FROM_PASS_ROW(yIn, pass) \
2527 (((yIn)<<PNG_PASS_ROW_SHIFT(pass))+PNG_PASS_START_ROW(pass))
2528 #define PNG_COL_FROM_PASS_COL(xIn, pass) \
2529 (((xIn)<<PNG_PASS_COL_SHIFT(pass))+PNG_PASS_START_COL(pass))
2537 #define PNG_PASS_MASK(pass,off) ( \
2538 ((0x110145AF>>(((7-(off))-(pass))<<2)) & 0xF) | \
2539 ((0x01145AF0>>(((7-(off))-(pass))<<2)) & 0xF0))
2541 #define PNG_ROW_IN_INTERLACE_PASS(y, pass) \
2542 ((PNG_PASS_MASK(pass,0) >> ((y)&7)) & 1)
2543 #define PNG_COL_IN_INTERLACE_PASS(x, pass) \
2544 ((PNG_PASS_MASK(pass,1) >> ((x)&7)) & 1)
2546 #ifdef PNG_READ_COMPOSITE_NODIV_SUPPORTED
2561 # define png_composite(composite, fg, alpha, bg) \
2562 { png_uint_16 temp = (png_uint_16)((png_uint_16)(fg) \
2563 * (png_uint_16)(alpha) \
2564 + (png_uint_16)(bg)*(png_uint_16)(255 \
2565 - (png_uint_16)(alpha)) + 128); \
2566 (composite) = (png_byte)((temp + (temp >> 8)) >> 8); }
2568 # define png_composite_16(composite, fg, alpha, bg) \
2569 { png_uint_32 temp = (png_uint_32)((png_uint_32)(fg) \
2570 * (png_uint_32)(alpha) \
2571 + (png_uint_32)(bg)*(65535 \
2572 - (png_uint_32)(alpha)) + 32768); \
2573 (composite) = (png_uint_16)((temp + (temp >> 16)) >> 16); }
2577 # define png_composite(composite, fg, alpha, bg) \
2578 (composite) = (png_byte)(((png_uint_16)(fg) * (png_uint_16)(alpha) + \
2579 (png_uint_16)(bg) * (png_uint_16)(255 - (png_uint_16)(alpha)) + \
2582 # define png_composite_16(composite, fg, alpha, bg) \
2583 (composite) = (png_uint_16)(((png_uint_32)(fg) * (png_uint_32)(alpha) + \
2584 (png_uint_32)(bg)*(png_uint_32)(65535 - (png_uint_32)(alpha)) + \
2588 #ifdef PNG_READ_INT_FUNCTIONS_SUPPORTED
2599 #ifdef PNG_WRITE_INT_FUNCTIONS_SUPPORTED
2602 #ifdef PNG_SAVE_INT_32_SUPPORTED
2610 #ifdef PNG_WRITE_INT_FUNCTIONS_SUPPORTED
2615 #ifdef PNG_USE_READ_MACROS
2620 # define png_get_uint_32(buf) \
2621 (((png_uint_32)(*(buf)) << 24) + \
2622 ((png_uint_32)(*((buf) + 1)) << 16) + \
2623 ((png_uint_32)(*((buf) + 2)) << 8) + \
2624 ((png_uint_32)(*((buf) + 3))))
2629 # define png_get_uint_16(buf) \
2631 (((unsigned int)(*(buf)) << 8) + \
2632 ((unsigned int)(*((buf) + 1)))))
2634 # define png_get_int_32(buf) \
2635 ((png_int_32)((*(buf) & 0x80) \
2636 ? -((png_int_32)((png_get_uint_32(buf) ^ 0xffffffffL) + 1)) \
2637 : (png_int_32)png_get_uint_32(buf)))
2648 #ifdef PNG_EXPORT_LAST_ORDINAL
2649 PNG_EXPORT_LAST_ORDINAL(233);
#define png_get_uint_16(buf)
png_uint_32 PNGAPI png_get_cHRM_XYZ(png_structp png_ptr, png_const_infop info_ptr, double *red_X, double *red_Y, double *red_Z, double *green_X, double *green_Y, double *green_Z, double *blue_X, double *blue_Y, double *blue_Z)
void PNGAPI png_set_packing(png_structp png_ptr)
void PNGAPI png_set_add_alpha(png_structp png_ptr, png_uint_32 filler, int filler_loc)
struct png_unknown_chunk_t png_unknown_chunk
void PNGAPI png_set_IHDR(png_structp png_ptr, png_infop info_ptr, png_uint_32 width, png_uint_32 height, int bit_depth, int color_type, int interlace_type, int compression_type, int filter_type)
GLuint const GLfloat * val
png_uint_32 PNGAPI png_get_x_pixels_per_inch(png_const_structp png_ptr, png_const_infop info_ptr)
void PNGAPI png_set_sCAL_s(png_structp png_ptr, png_infop info_ptr, int unit, png_const_charp swidth, png_const_charp sheight)
png_size_t PNGAPI png_get_rowbytes(png_const_structp png_ptr, png_const_infop info_ptr)
struct png_time_struct png_time
else Out of place iCCP chunk
void PNGAPI png_free_data(png_structp png_ptr, png_infop info_ptr, png_uint_32 mask, int num)
void PNGAPI png_write_image(png_structp png_ptr, png_bytepp image)
void PNGAPI png_write_png(png_structp png_ptr, png_infop info_ptr, int transforms, voidp params)
png_color FAR *FAR * png_colorpp
#define PNG_FP_EXPORT(ordinal, type, name, args)
png_fixed_point PNGAPI png_get_x_offset_inches_fixed(png_structp png_ptr, png_const_infop info_ptr)
void PNGAPI png_set_expand_gray_1_2_4_to_8(png_structp png_ptr)
#define PNG_EXPORTA(ordinal, type, name, args, attributes)
void PNGAPI png_write_chunk_start(png_structp png_ptr, png_const_bytep chunk_string, png_uint_32 length)
void PNGAPI png_set_flush(png_structp png_ptr, int nrows)
struct png_sPLT_entry_struct png_sPLT_entry
GLint GLenum GLsizei GLsizei GLsizei GLint GLenum GLenum type
#define png_get_uint_32(buf)
void PNGAPI png_set_tIME(png_structp png_ptr, png_infop info_ptr, png_const_timep mod_time)
png_uint_32 PNGAPI png_get_PLTE(png_const_structp png_ptr, png_const_infop info_ptr, png_colorp *palette, int *num_palette)
void PNGAPI png_process_data(png_structp png_ptr, png_infop info_ptr, png_bytep buffer, png_size_t buffer_size)
void PNGAPI png_progressive_combine_row(png_structp png_ptr, png_bytep old_row, png_const_bytep new_row)
void PNGAPI png_set_compression_level(png_structp png_ptr, int level)
PNG_CONST png_time FAR * png_const_timep
png_voidp PNGAPI png_get_user_transform_ptr(png_const_structp png_ptr)
png_uint_32 PNGAPI png_get_y_pixels_per_inch(png_const_structp png_ptr, png_const_infop info_ptr)
png_uint_32 PNGAPI png_get_sCAL_s(png_const_structp png_ptr, png_const_infop info_ptr, int *unit, png_charpp width, png_charpp height)
void PNGAPI png_set_read_status_fn(png_structp png_ptr, png_read_status_ptr read_row_fn)
png_uint_32 PNGAPI png_get_sRGB(png_const_structp png_ptr, png_const_infop info_ptr, int *file_srgb_intent)
float PNGAPI png_get_y_offset_inches(png_const_structp png_ptr, png_const_infop info_ptr)
void PNGAPI png_save_int_32(png_bytep buf, png_int_32 i)
png_byte PNGAPI png_get_color_type(png_const_structp png_ptr, png_const_infop info_ptr)
PNG_CONST png_struct FAR * png_const_structp
png_uint_32 PNGAPI png_get_chunk_cache_max(png_const_structp png_ptr)
void PNGAPI png_set_background(png_structp png_ptr, png_const_color_16p background_color, int background_gamma_code, int need_expand, double background_gamma)
void PNGAPI png_set_rows(png_structp png_ptr, png_infop info_ptr, png_bytepp row_pointers)
void PNGAPI png_set_palette_to_rgb(png_structp png_ptr)
png_write_status_ptr write_row_fn
png_color_16 FAR * png_color_16p
png_color_8 FAR *FAR * png_color_8pp
void PNGAPI png_set_mem_fn(png_structp png_ptr, png_voidp mem_ptr, png_malloc_ptr malloc_fn, png_free_ptr free_fn)
void PNGAPI png_chunk_warning(png_structp png_ptr, png_const_charp warning_message)
png_uint_32 PNGAPI png_process_data_skip(png_structp png_ptr)
void PNGAPI png_set_filter_heuristics(png_structp png_ptr, int heuristic_method, int num_weights, png_const_doublep filter_weights, png_const_doublep filter_costs)
float PNGAPI png_get_x_offset_inches(png_const_structp png_ptr, png_const_infop info_ptr)
void PNGAPI png_set_invert_alpha(png_structp png_ptr)
void PNGAPI png_write_rows(png_structp png_ptr, png_bytepp row, png_uint_32 num_rows)
png_uint_32 PNGAPI png_get_sPLT(png_const_structp png_ptr, png_const_infop info_ptr, png_sPLT_tpp spalettes)
png_byte PNGAPI png_get_compression_type(png_const_structp png_ptr, png_const_infop info_ptr)
png_const_charp PNGAPI png_get_libpng_ver(png_const_structp png_ptr)
void PNGFAPI png_set_gamma_fixed(png_structp png_ptr, png_fixed_point scrn_gamma, png_fixed_point file_gamma)
png_const_bytep PNGAPI png_get_io_chunk_name(png_structp png_ptr)
void PNGAPI png_read_rows(png_structp png_ptr, png_bytepp row, png_bytepp display_row, png_uint_32 num_rows)
png_error(png_ptr,"Missing IHDR before iCCP")
void PNGAPI png_set_unknown_chunks(png_structp png_ptr, png_infop info_ptr, png_const_unknown_chunkp unknowns, int num_unknowns)
void PNGAPI png_set_user_limits(png_structp png_ptr, png_uint_32 user_width_max, png_uint_32 user_height_max)
void PNGAPI png_set_quantize(png_structp png_ptr, png_colorp palette, int num_palette, int maximum_colors, png_const_uint_16p histogram, int full_quantize)
void PNGAPI png_set_sig_bytes(png_structp png_ptr, int num_bytes)
void PNGAPI png_write_chunk(png_structp png_ptr, png_const_bytep chunk_string, png_const_bytep data, png_size_t length)
EGLSurface EGLint EGLint EGLint EGLint height
void PNGFAPI png_set_gAMA_fixed(png_structp png_ptr, png_infop info_ptr, png_fixed_point file_gamma)
png_uint_32 PNGAPI png_get_hIST(png_const_structp png_ptr, png_const_infop info_ptr, png_uint_16p *hist)
#define PNG_CALLBACK(type, name, args)
png_size_t PNGAPI png_process_data_pause(png_structp png_ptr, int save)
PNG_CONST png_color FAR * png_const_colorp
png_uint_32 PNGAPI png_get_pixels_per_meter(png_const_structp png_ptr, png_const_infop info_ptr)
EGLImageKHR EGLint * name
png_uint_32 PNGAPI png_get_sCAL(png_const_structp png_ptr, png_const_infop info_ptr, int *unit, double *width, double *height)
png_uint_32 PNGAPI png_get_text(png_const_structp png_ptr, png_const_infop info_ptr, png_textp *text_ptr, int *num_text)
void PNGAPI png_set_expand_16(png_structp png_ptr)
PNG_CONST char FAR * png_const_charp
png_uint_32 PNGAPI png_get_image_width(png_const_structp png_ptr, png_const_infop info_ptr)
void PNGAPI png_set_text_compression_mem_level(png_structp png_ptr, int mem_level)
void PNGAPI png_set_compression_strategy(png_structp png_ptr, int strategy)
png_uint_32 PNGAPI png_get_gAMA(png_const_structp png_ptr, png_const_infop info_ptr, double *file_gamma)
void PNGAPI png_set_strip_16(png_structp png_ptr)
png_int_32 PNGAPI png_get_y_offset_pixels(png_const_structp png_ptr, png_const_infop info_ptr)
png_voidp PNGAPI png_get_error_ptr(png_const_structp png_ptr)
void PNGAPI png_set_write_fn(png_structp png_ptr, png_voidp io_ptr, png_rw_ptr write_data_fn, png_flush_ptr output_flush_fn)
void PNGAPI png_set_sCAL(png_structp png_ptr, png_infop info_ptr, int unit, double width, double height)
PNG_CONST png_color_8 FAR * png_const_color_8p
png_row_info FAR *FAR * png_row_infopp
void PNGAPI png_set_unknown_chunk_location(png_structp png_ptr, png_infop info_ptr, int chunk, int location)
png_uint_32 PNGAPI png_get_tIME(png_const_structp png_ptr, png_infop info_ptr, png_timep *mod_time)
png_struct FAR *FAR * png_structpp
png_uint_32 PNGAPI png_get_cHRM(png_const_structp png_ptr, png_const_infop info_ptr, double *white_x, double *white_y, double *red_x, double *red_y, double *green_x, double *green_y, double *blue_x, double *blue_y)
void PNGAPI png_set_gAMA(png_structp png_ptr, png_infop info_ptr, double file_gamma)
png_uint_32 PNGAPI png_permit_mng_features(png_structp png_ptr, png_uint_32 mng_features)
void PNGAPI png_info_init_3(png_infopp ptr_ptr, png_size_t png_info_struct_size)
void PNGAPI png_set_oFFs(png_structp png_ptr, png_infop info_ptr, png_int_32 offset_x, png_int_32 offset_y, int unit_type)
void PNGAPI png_chunk_benign_error(png_structp png_ptr, png_const_charp error_message)
png_unknown_chunk FAR *FAR * png_unknown_chunkpp
void PNGAPI png_destroy_info_struct(png_structp png_ptr, png_infopp info_ptr_ptr)
png_uint_32 PNGAPI png_get_pixels_per_inch(png_const_structp png_ptr, png_const_infop info_ptr)
png_uint_32 PNGAPI png_get_image_height(png_const_structp png_ptr, png_const_infop info_ptr)
png_set_iCCP(png_ptr, info_ptr, png_ptr->chunkdata, compression_type,(png_bytep) png_ptr->chunkdata+prefix_length, profile_size)
void PNGAPI png_set_user_transform_info(png_structp png_ptr, png_voidp user_transform_ptr, int user_transform_depth, int user_transform_channels)
png_size_t png_alloc_size_t
png_uint_32 PNGAPI png_get_pCAL(png_const_structp png_ptr, png_const_infop info_ptr, png_charp *purpose, png_int_32 *X0, png_int_32 *X1, int *type, int *nparams, png_charp *units, png_charpp *params)
void PNGAPI png_write_row(png_structp png_ptr, png_const_bytep row)
#define PNG_FIXED_EXPORT(ordinal, type, name, args)
void PNGAPI png_read_row(png_structp png_ptr, png_bytep row, png_bytep dsp_row)
void PNGAPI png_set_bgr(png_structp png_ptr)
void PNGAPI png_set_compression_buffer_size(png_structp png_ptr, png_size_t size)
png_uint_32 PNGAPI png_get_sBIT(png_const_structp png_ptr, png_infop info_ptr, png_color_8p *sig_bit)
png_byte FAR *FAR * png_bytepp
void PNGAPI png_set_sRGB_gAMA_and_cHRM(png_structp png_ptr, png_infop info_ptr, int srgb_intent)
void PNGAPI png_set_write_user_transform_fn(png_structp png_ptr, png_user_transform_ptr write_user_transform_fn)
struct png_color_8_struct png_color_8
EGLContext EGLenum EGLClientBuffer buffer
png_uint_32 PNGAPI png_get_y_pixels_per_meter(png_const_structp png_ptr, png_const_infop info_ptr)
void PNGAPI png_set_bKGD(png_structp png_ptr, png_infop info_ptr, png_const_color_16p background)
void PNGAPI png_set_sCAL_fixed(png_structp png_ptr, png_infop info_ptr, int unit, png_fixed_point width, png_fixed_point height)
png_int_32 PNGAPI png_get_x_offset_pixels(png_const_structp png_ptr, png_const_infop info_ptr)
png_const_charp PNGAPI png_convert_to_rfc1123(png_structp png_ptr, png_const_timep ptime)
void PNGAPI png_build_grayscale_palette(int bit_depth, png_colorp palette)
png_alloc_size_t PNGAPI png_get_chunk_malloc_max(png_const_structp png_ptr)
GLenum GLenum GLvoid * row
#define PNG_EXPORT(ordinal, type, name, args)
void PNGAPI png_set_sBIT(png_structp png_ptr, png_infop info_ptr, png_const_color_8p sig_bit)
png_struct FAR * png_structp
void PNGAPI png_write_info(png_structp png_ptr, png_infop info_ptr)
void PNGAPI png_read_end(png_structp png_ptr, png_infop info_ptr)
png_int_32 PNGAPI png_get_y_offset_microns(png_const_structp png_ptr, png_const_infop info_ptr)
void PNGAPI png_set_filler(png_structp png_ptr, png_uint_32 filler, int filler_loc)
png_voidp PNGAPI png_get_progressive_ptr(png_const_structp png_ptr)
PNG_CONST png_text FAR * png_const_textp
void PNGAPI png_set_PLTE(png_structp png_ptr, png_infop info_ptr, png_const_colorp palette, int num_palette)
png_const_charp PNGAPI png_get_header_version(png_const_structp png_ptr)
PNG_CONST png_sPLT_entry FAR * png_const_sPLT_entryp
void PNGAPI png_set_text_compression_strategy(png_structp png_ptr, int strategy)
void PNGAPI png_set_packswap(png_structp png_ptr)
struct png_text_struct png_text
png_byte PNGAPI png_get_interlace_type(png_const_structp png_ptr, png_const_infop info_ptr)
GLint GLenum GLsizei GLsizei GLsizei GLint GLsizei const GLvoid * data
png_uint_32 PNGAPI png_get_IHDR(png_structp png_ptr, png_infop info_ptr, png_uint_32 *width, png_uint_32 *height, int *bit_depth, int *color_type, int *interlace_type, int *compression_type, int *filter_type)
void PNGAPI png_set_swap(png_structp png_ptr)
png_set_sPLT(png_ptr, info_ptr,&new_palette, 1)
void PNGAPI png_write_flush(png_structp png_ptr)
EGLSurface EGLint EGLint EGLint width
void PNGAPI png_set_text_compression_level(png_structp png_ptr, int level)
unsigned short png_uint_16
void PNGAPI png_set_cHRM(png_structp png_ptr, png_infop info_ptr, double white_x, double white_y, double red_x, double red_y, double green_x, double green_y, double blue_x, double blue_y)
char * png_libpng_version_1_5_9
void PNGAPI png_set_compression_mem_level(png_structp png_ptr, int mem_level)
struct png_sPLT_struct png_sPLT_t
png_uint_32 PNGAPI png_get_io_state(png_structp png_ptr)
void PNGAPI png_set_text(png_structp png_ptr, png_infop info_ptr, png_const_textp text_ptr, int num_text)
void PNGAPI png_set_scale_16(png_structp png_ptr)
void PNGFAPI png_set_rgb_to_gray_fixed(png_structp png_ptr, int error_action, png_fixed_point red, png_fixed_point green)
png_sPLT_entry FAR * png_sPLT_entryp
void PNGAPI png_warning(png_structp png_ptr, png_const_charp warning_message)
png_uint_32 PNGAPI png_get_user_width_max(png_const_structp png_ptr)
png_voidp PNGAPI png_get_io_ptr(png_structp png_ptr)
int PNGAPI png_handle_as_unknown(png_structp png_ptr, png_const_bytep chunk_name)
void PNGAPI png_set_write_status_fn(png_structp png_ptr, png_write_status_ptr write_row_fn)
struct png_color_16_struct png_color_16
png_uint_32 PNGAPI png_get_user_height_max(png_const_structp png_ptr)
png_uint_16 FAR * png_uint_16p
void PNGAPI png_set_cHRM_XYZ(png_structp png_ptr, png_infop info_ptr, double red_X, double red_Y, double red_Z, double green_X, double green_Y, double green_Z, double blue_X, double blue_Y, double blue_Z)
void PNGAPI png_set_chunk_malloc_max(png_structp png_ptr, png_alloc_size_t user_chunk_malloc_max)
void PNGAPI png_write_end(png_structp png_ptr, png_infop info_ptr)
PNG_CONST png_byte FAR * png_const_bytep
PNG_CONST png_fixed_point FAR * png_const_fixed_point_p
void PNGAPI png_set_shift(png_structp png_ptr, png_const_color_8p true_bits)
png_read_status_ptr read_row_fn
png_uint_32 PNGAPI png_get_sCAL_fixed(png_structp png_ptr, png_const_infop info_ptr, int *unit, png_fixed_point *width, png_fixed_point *height)
void PNGAPI png_set_gamma(png_structp png_ptr, double scrn_gamma, double file_gamma)
png_voidp PNGAPI png_get_mem_ptr(png_const_structp png_ptr)
png_int_32 PNGAPI png_get_x_offset_microns(png_const_structp png_ptr, png_const_infop info_ptr)
png_uint_32 PNGAPI png_get_valid(png_const_structp png_ptr, png_const_infop info_ptr, png_uint_32 flag)
png_uint_32 PNGAPI png_get_oFFs(png_const_structp png_ptr, png_const_infop info_ptr, png_int_32 *offset_x, png_int_32 *offset_y, int *unit_type)
void PNGFAPI png_set_cHRM_fixed(png_structp png_ptr, png_infop info_ptr, png_fixed_point white_x, png_fixed_point white_y, png_fixed_point red_x, png_fixed_point red_y, png_fixed_point green_x, png_fixed_point green_y, png_fixed_point blue_x, png_fixed_point blue_y)
png_const_bytep PNGAPI png_get_signature(png_const_structp png_ptr, png_infop info_ptr)
PNG_CONST png_color_16 FAR * png_const_color_16p
void PNGAPI png_set_strip_alpha(png_structp png_ptr)
void PNGAPI png_set_compression_window_bits(png_structp png_ptr, int window_bits)
void PNGAPI png_read_info(png_structp png_ptr, png_infop info_ptr)
void PNGAPI png_set_read_fn(png_structp png_ptr, png_voidp io_ptr, png_rw_ptr read_data_fn)
#define png_get_int_32(buf)
void PNGAPI png_save_uint_32(png_bytep buf, png_uint_32 i)
void PNGAPI png_set_alpha_mode(png_structp png_ptr, int mode, double output_gamma)
png_uint_32 PNGAPI png_get_uint_31(png_structp png_ptr, png_const_bytep buf)
void PNGAPI png_set_invert_mono(png_structp png_ptr)
png_sPLT_entry FAR *FAR * png_sPLT_entrypp
void PNGAPI png_start_read_image(png_structp png_ptr)
PNG_CONST png_unknown_chunk FAR * png_const_unknown_chunkp
PNG_CONST png_info FAR * png_const_infop
void PNGAPI png_set_hIST(png_structp png_ptr, png_infop info_ptr, png_const_uint_16p hist)
png_byte PNGAPI png_get_bit_depth(png_const_structp png_ptr, png_const_infop info_ptr)
png_uint_32 PNGAPI png_get_tRNS(png_const_structp png_ptr, png_infop info_ptr, png_bytep *trans_alpha, int *num_trans, png_color_16p *trans_color)
void PNGAPI png_write_chunk_end(png_structp png_ptr)
void PNGAPI png_set_filter_heuristics_fixed(png_structp png_ptr, int heuristic_method, int num_weights, png_const_fixed_point_p filter_weights, png_const_fixed_point_p filter_costs)
png_color_16 FAR *FAR * png_color_16pp
void PNGAPI png_data_freer(png_structp png_ptr, png_infop info_ptr, int freer, png_uint_32 mask)
png_uint_32 PNGFAPI png_get_gAMA_fixed(png_const_structp png_ptr, png_const_infop info_ptr, png_fixed_point *file_gamma)
void PNGAPI png_free_default(png_structp png_ptr, png_voidp ptr)
png_row_info FAR * png_row_infop
png_const_charp PNGAPI png_get_copyright(png_const_structp png_ptr)
void PNGAPI png_set_text_compression_window_bits(png_structp png_ptr, int window_bits)
png_byte PNGAPI png_get_filter_type(png_const_structp png_ptr, png_const_infop info_ptr)
GLenum GLuint GLsizei const GLchar * buf
GLenum GLsizei GLsizei GLsizei GLsizei GLbitfield flags
void PNGAPI png_set_tRNS(png_structp png_ptr, png_infop info_ptr, png_const_bytep trans_alpha, int num_trans, png_const_color_16p trans_color)
void PNGAPI png_write_info_before_PLTE(png_structp png_ptr, png_infop info_ptr)
void PNGFAPI png_set_cHRM_XYZ_fixed(png_structp png_ptr, png_infop info_ptr, png_fixed_point int_red_X, png_fixed_point int_red_Y, png_fixed_point int_red_Z, png_fixed_point int_green_X, png_fixed_point int_green_Y, png_fixed_point int_green_Z, png_fixed_point int_blue_X, png_fixed_point int_blue_Y, png_fixed_point int_blue_Z)
void PNGAPI png_convert_from_time_t(png_timep ptime, time_t ttime)
png_sPLT_t FAR * png_sPLT_tp
void PNGAPI png_write_sig(png_structp png_ptr)
void PNGAPI png_set_expand(png_structp png_ptr)
void PNGAPI png_destroy_write_struct(png_structpp png_ptr_ptr, png_infopp info_ptr_ptr)
png_color_8 FAR * png_color_8p
int PNGAPI png_set_interlace_handling(png_structp png_ptr)
png_uint_32 PNGAPI png_get_cHRM_fixed(png_const_structp png_ptr, png_const_infop info_ptr, png_fixed_point *white_x, png_fixed_point *white_y, png_fixed_point *red_x, png_fixed_point *red_y, png_fixed_point *green_x, png_fixed_point *green_y, png_fixed_point *blue_x, png_fixed_point *blue_y)
png_text FAR *FAR * png_textpp
void PNGAPI png_set_crc_action(png_structp png_ptr, int crit_action, int ancil_action)
GLint GLint GLint GLint GLint GLint GLint GLbitfield mask
void PNGFAPI png_set_alpha_mode_fixed(png_structp png_ptr, int mode, png_fixed_point output_gamma)
void PNGAPI png_set_tRNS_to_alpha(png_structp png_ptr)
void PNGAPI png_read_png(png_structp png_ptr, png_infop info_ptr, int transforms, voidp params)
png_int_32 png_fixed_point
char FAR *FAR * png_charpp
png_bytepp PNGAPI png_get_rows(png_const_structp png_ptr, png_const_infop info_ptr)
void PNGAPI png_read_image(png_structp png_ptr, png_bytepp image)
void PNGFAPI png_set_background_fixed(png_structp png_ptr, png_const_color_16p background_color, int background_gamma_code, int need_expand, png_fixed_point background_gamma)
png_fixed_point PNGAPI png_get_y_offset_inches_fixed(png_structp png_ptr, png_const_infop info_ptr)
void PNGAPI png_save_uint_16(png_bytep buf, unsigned int i)
void PNGAPI png_set_invalid(png_structp png_ptr, png_infop info_ptr, int mask)
png_uint_32 PNGFAPI png_get_cHRM_XYZ_fixed(png_structp png_ptr, png_const_infop info_ptr, png_fixed_point *int_red_X, png_fixed_point *int_red_Y, png_fixed_point *int_red_Z, png_fixed_point *int_green_X, png_fixed_point *int_green_Y, png_fixed_point *int_green_Z, png_fixed_point *int_blue_X, png_fixed_point *int_blue_Y, png_fixed_point *int_blue_Z)
#define PNG_FUNCTION(type, name, args, attributes)
int PNGAPI png_get_unknown_chunks(png_const_structp png_ptr, png_const_infop info_ptr, png_unknown_chunkpp unknowns)
PNG_CONST png_sPLT_t FAR * png_const_sPLT_tp
void PNGAPI png_set_compression_method(png_structp png_ptr, int method)
void PNGAPI png_set_read_user_chunk_fn(png_structp png_ptr, png_voidp user_chunk_ptr, png_user_chunk_ptr read_user_chunk_fn)
jmp_buf *PNGAPI png_set_longjmp_fn(png_structp png_ptr, png_longjmp_ptr longjmp_fn, size_t jmp_buf_size)
png_uint_32 PNGAPI png_get_pHYs_dpi(png_const_structp png_ptr, png_const_infop info_ptr, png_uint_32 *res_x, png_uint_32 *res_y, int *unit_type)
struct png_row_info_struct png_row_info
png_sPLT_t FAR *FAR * png_sPLT_tpp
png_uint_32 PNGAPI png_get_iCCP(png_const_structp png_ptr, png_const_infop info_ptr, png_charpp name, int *compression_type, png_bytepp profile, png_uint_32 *proflen)
png_const_charp PNGAPI png_get_header_ver(png_const_structp png_ptr)
png_unknown_chunk FAR * png_unknown_chunkp
void PNGAPI png_set_sRGB(png_structp png_ptr, png_infop info_ptr, int srgb_intent)
void PNGAPI png_set_keep_unknown_chunks(png_structp png_ptr, int keep, png_const_bytep chunk_list, int num_chunks)
png_byte PNGAPI png_get_channels(png_const_structp png_ptr, png_const_infop info_ptr)
void PNGAPI png_set_read_user_transform_fn(png_structp png_ptr, png_user_transform_ptr read_user_transform_fn)
void PNGAPI png_set_progressive_read_fn(png_structp png_ptr, png_voidp progressive_ptr, png_progressive_info_ptr info_fn, png_progressive_row_ptr row_fn, png_progressive_end_ptr end_fn)
png_uint_32 PNGAPI png_get_bKGD(png_const_structp png_ptr, png_infop info_ptr, png_color_16p *background)
void PNGAPI png_set_pHYs(png_structp png_ptr, png_infop info_ptr, png_uint_32 res_x, png_uint_32 res_y, int unit_type)
png_uint_32 PNGAPI png_get_x_pixels_per_meter(png_const_structp png_ptr, png_const_infop info_ptr)
png_voidp PNGAPI png_get_user_chunk_ptr(png_const_structp png_ptr)
png_byte PNGAPI png_get_rgb_to_gray_status(png_const_structp png_ptr)
png_info FAR *FAR * png_infopp
void PNGAPI png_free(png_structp png_ptr, png_voidp ptr)
int PNGAPI png_reset_zstream(png_structp png_ptr)
void PNGAPI png_set_rgb_to_gray(png_structp png_ptr, int error_action, double red, double green)
void PNGAPI png_set_swap_alpha(png_structp png_ptr)
void PNGAPI png_set_pCAL(png_structp png_ptr, png_infop info_ptr, png_const_charp purpose, png_int_32 X0, png_int_32 X1, int type, int nparams, png_const_charp units, png_charpp params)
png_uint_32 PNGAPI png_get_current_row_number(png_const_structp png_ptr)
void PNGAPI png_destroy_read_struct(png_structpp png_ptr_ptr, png_infopp info_ptr_ptr, png_infopp end_info_ptr_ptr)
png_uint_32 PNGAPI png_get_io_chunk_type(png_const_structp png_ptr)
void PNGAPI png_set_chunk_cache_max(png_structp png_ptr, png_uint_32 user_chunk_cache_max)
void PNGAPI png_set_filter(png_structp png_ptr, int method, int filters)
void PNGAPI png_set_error_fn(png_structp png_ptr, png_voidp error_ptr, png_error_ptr error_fn, png_error_ptr warning_fn)
void PNGAPI png_read_update_info(png_structp png_ptr, png_infop info_ptr)
png_size_t PNGAPI png_get_compression_buffer_size(png_const_structp png_ptr)
png_byte PNGAPI png_get_current_pass_number(png_const_structp png_ptr)
void PNGAPI png_init_io(png_structp png_ptr, png_FILE_p fp)
png_time FAR *FAR * png_timepp
float PNGAPI png_get_pixel_aspect_ratio(png_const_structp png_ptr, png_const_infop info_ptr)
int PNGAPI png_sig_cmp(png_const_bytep sig, png_size_t start, png_size_t num_to_check)
png_uint_32 PNGAPI png_get_pHYs(png_const_structp png_ptr, png_const_infop info_ptr, png_uint_32 *res_x, png_uint_32 *res_y, int *unit_type)
PNG_CONST png_uint_16 FAR * png_const_uint_16p
png_fixed_point PNGAPI png_get_pixel_aspect_ratio_fixed(png_const_structp png_ptr, png_const_infop info_ptr)
void PNGAPI png_benign_error(png_structp png_ptr, png_const_charp error_message)
void PNGAPI png_convert_from_struct_tm(png_timep ptime, PNG_CONST struct tm FAR *ttime)
void PNGAPI png_set_gray_to_rgb(png_structp png_ptr)
void PNGAPI png_set_benign_errors(png_structp png_ptr, int allowed)
void PNGAPI png_write_chunk_data(png_structp png_ptr, png_const_bytep data, png_size_t length)
struct png_color_struct png_color
png_uint_32 PNGAPI png_access_version_number(void)
png_color FAR * png_colorp
void PNGAPI png_set_text_compression_method(png_structp png_ptr, int method)