;----------------------------------------
; PNG.LIB module definition file for OS/2
;----------------------------------------

; Version 1.2.59rc01

LIBRARY		PNG
DESCRIPTION	"PNG image compression library for OS/2"
CODE		PRELOAD MOVEABLE DISCARDABLE
DATA		PRELOAD MOVEABLE MULTIPLE

EXPORTS

  png_build_grayscale_palette
  png_check_sig
  png_chunk_error
  png_chunk_warning
  png_convert_from_struct_tm
  png_convert_from_time_t
  png_create_info_struct
  png_create_read_struct
  png_create_write_struct
  png_data_freer
  png_destroy_info_struct
  png_destroy_read_struct
  png_destroy_write_struct
  png_error
  png_free
  png_free_data
  png_get_IHDR
  png_get_PLTE
  png_get_bKGD
  png_get_bit_depth
  png_get_cHRM
  png_get_cHRM_fixed
  png_get_channels
  png_get_color_type
  png_get_compression_buffer_size
  png_get_compression_type
  png_get_copyright
  png_get_error_ptr
  png_get_filter_type
  png_get_gAMA
  png_get_gAMA_fixed
  png_get_hIST
  png_get_header_ver
  png_get_header_version
  png_get_iCCP
  png_get_image_height
  png_get_image_width
  png_get_interlace_type
  png_get_io_ptr
  png_get_libpng_ver
  png_get_oFFs
  png_get_pCAL
  png_get_pHYs
  png_get_pixel_aspect_ratio
  png_get_pixels_per_meter
  png_get_progressive_ptr
  png_get_rgb_to_gray_status
  png_get_rowbytes
  png_get_rows
  png_get_sBIT
  png_get_sCAL
  png_get_sPLT
  png_get_sRGB
  png_get_signature
  png_get_tIME
  png_get_tRNS
  png_get_text
  png_get_unknown_chunks
  png_get_user_chunk_ptr
  png_get_user_transform_ptr
  png_get_valid
  png_get_x_offset_microns
  png_get_x_offset_pixels
  png_get_x_pixels_per_meter
  png_get_y_offset_microns
  png_get_y_offset_pixels
  png_get_y_pixels_per_meter
  png_malloc
  png_memcpy_check
  png_memset_check
  png_permit_empty_plte
  png_process_data
  png_progressive_combine_row
  png_read_end
  png_read_image
  png_read_info
; png_read_init ; deprecated
  png_read_png
  png_read_row
  png_read_rows
  png_read_update_info
  png_reset_zstream
  png_set_IHDR
  png_set_PLTE
  png_set_bKGD
  png_set_background
  png_set_bgr
  png_set_cHRM
  png_set_cHRM_fixed
  png_set_compression_buffer_size
  png_set_compression_level
  png_set_compression_mem_level
  png_set_compression_method
  png_set_compression_strategy
  png_set_compression_window_bits
  png_set_crc_action
  png_set_dither
  png_set_error_fn
  png_set_expand
  png_set_filler
  png_set_filter
  png_set_filter_heuristics
  png_set_flush
  png_set_gAMA
  png_set_gAMA_fixed
  png_set_gamma
; png_set_gray_1_2_4_to_8 ; deprecated as of libpng-1.2.9
  png_set_gray_to_rgb
  png_set_hIST
  png_set_iCCP
  png_set_interlace_handling
  png_set_invert_alpha
  png_set_invert_mono
  png_set_keep_unknown_chunks
  png_set_oFFs
  png_set_pCAL
  png_set_pHYs
  png_set_packing
  png_set_packswap
  png_set_palette_to_rgb
  png_set_progressive_read_fn
  png_set_read_fn
  png_set_read_status_fn
  png_set_read_user_chunk_fn
  png_set_read_user_transform_fn
  png_set_rgb_to_gray
  png_set_rgb_to_gray_fixed
  png_set_rows
  png_set_sBIT
  png_set_sCAL
  png_set_sPLT
  png_set_sRGB
  png_set_sRGB_gAMA_and_cHRM
  png_set_shift
  png_set_sig_bytes
  png_set_strip_16
  png_set_strip_alpha
  png_set_swap
  png_set_swap_alpha
  png_set_tIME
  png_set_tRNS
  png_set_tRNS_to_alpha
  png_set_text
  png_set_unknown_chunk_location
  png_set_unknown_chunks
  png_set_user_transform_info
  png_set_write_fn
  png_set_write_status_fn
  png_set_write_user_transform_fn
  png_sig_cmp
  png_start_read_image
  png_warning
  png_write_chunk
  png_write_chunk_data
  png_write_chunk_end
  png_write_chunk_start
  png_write_end
  png_write_flush
  png_write_image
  png_write_info
  png_write_info_before_PLTE
; png_write_init ; deprecated
  png_write_png
  png_write_row
  png_write_rows
  png_read_init_2
  png_write_init_2
  png_access_version_number
  png_init_io
  png_convert_to_rfc1123
  png_set_invalid

; Added at version 1.2.0:
  png_mmx_support
  png_permit_empty_plte
  png_permit_mng_features
  png_get_mmx_flagmask
  png_get_asm_flagmask
  png_get_asm_flags
  png_get_mmx_bitdepth_threshold
  png_get_mmx_rowbytes_threshold
  png_set_asm_flags
  png_init_mmx_flags

; Added at version 1.2.2:
  png_handle_as_unknown

; Added at version 1.2.2 and deleted from 1.2.3:
; png_zalloc
; png_zfree

; Added at version 1.2.4
  png_malloc_warn

; Added at version 1.2.6
  png_set_user_limits
  png_get_user_height_max
  png_get_user_width_max
; Added at version 1.2.7
  png_set_add_alpha

; Added at version 1.2.9
  png_get_uint_32
  png_save_uint_32
  png_get_uint_16
  png_save_uint_16
  png_get_int_32
  png_save_int_32
  png_get_uint_31
  png_set_expand_gray_1_2_4_to_8

; Added at version 1.2.41
  png_write_sig
  png_check_cHRM_fixed

; These are not present when libpng is compiled with PNG_NO_GLOBAL_ARRAYS
  png_pass_start
  png_pass_inc
  png_pass_ystart
  png_pass_yinc
  png_pass_mask
  png_pass_dsp_mask
; png_pass_width
; png_pass_height

; These are not present when libpng is compiled with PNG_NO_GLOBAL_ARRAYS
  png_IHDR
  png_IDAT
  png_IEND
  png_PLTE
  png_bKGD
  png_cHRM
  png_gAMA
  png_hIST
  png_iCCP
  png_iTXt
  png_oFFs
  png_pCAL
  png_pHYs
  png_sBIT
  png_sCAL
  png_sPLT
  png_sRGB
  png_tEXt
  png_tIME
  png_tRNS
  png_zTXt
