libpng.bmx 3.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105
  1. Module Pub.LibPNG
  2. ModuleInfo "Version: 1.03"
  3. ModuleInfo "Author: Guy Eric Schalnat, Andreas Dilger, Glenn Randers-Pehrson, Others"
  4. ModuleInfo "License: ZLib/PNG License"
  5. ModuleInfo "Modserver: BRL"
  6. ModuleInfo "Credit: Adapted for BlitzMax by Mark Sibly"
  7. ModuleInfo "History: 1.03"
  8. ModuleInfo "History: Fixed for Intel Macs"
  9. ModuleInfo "History: 1.02"
  10. ModuleInfo "History: Update to libpng 1.2.12"
  11. Import Pub.ZLib
  12. Import "png.c"
  13. Import "pngerror.c"
  14. Import "pngget.c"
  15. Import "pngmem.c"
  16. Import "pngpread.c"
  17. Import "pngread.c"
  18. Import "pngrio.c"
  19. Import "pngrtran.c"
  20. Import "pngrutil.c"
  21. Import "pngset.c"
  22. Import "pngtrans.c"
  23. Import "pngwio.c"
  24. Import "pngwrite.c"
  25. Import "pngwtran.c"
  26. Import "pngwutil.c"
  27. 'Import "pngvcrd.c"
  28. ?MacosX86
  29. Import "pnggccrd.c"
  30. ?
  31. Extern
  32. Const PNG_COLOR_MASK_PALETTE= 1
  33. Const PNG_COLOR_MASK_COLOR= 2
  34. Const PNG_COLOR_MASK_ALPHA= 4
  35. Const PNG_COLOR_TYPE_GRAY= 0
  36. Const PNG_COLOR_TYPE_PALETTE= (PNG_COLOR_MASK_COLOR | PNG_COLOR_MASK_PALETTE)
  37. Const PNG_COLOR_TYPE_RGB= (PNG_COLOR_MASK_COLOR)
  38. Const PNG_COLOR_TYPE_RGB_ALPHA= (PNG_COLOR_MASK_COLOR | PNG_COLOR_MASK_ALPHA)
  39. Const PNG_COLOR_TYPE_GRAY_ALPHA= (PNG_COLOR_MASK_ALPHA)
  40. Const PNG_COLOR_TYPE_RGBA= PNG_COLOR_TYPE_RGB_ALPHA
  41. Const PNG_COLOR_TYPE_GA= PNG_COLOR_TYPE_GRAY_ALPHA
  42. Const PNG_TRANSFORM_IDENTITY= $0000 'read and write
  43. Const PNG_TRANSFORM_STRIP_16= $0001 'read only
  44. Const PNG_TRANSFORM_STRIP_ALPHA= $0002 'read only
  45. Const PNG_TRANSFORM_PACKING= $0004 'read and write
  46. Const PNG_TRANSFORM_PACKSWAP= $0008 'read and write
  47. Const PNG_TRANSFORM_EXPAND= $0010 'read only
  48. Const PNG_TRANSFORM_INVERT_MONO= $0020 'read and write
  49. Const PNG_TRANSFORM_SHIFT= $0040 'read and write
  50. Const PNG_TRANSFORM_BGR= $0080 'read and write
  51. Const PNG_TRANSFORM_SWAP_ALPHA= $0100 'read and write
  52. Const PNG_TRANSFORM_SWAP_ENDIAN= $0200 'read and write
  53. Const PNG_TRANSFORM_INVERT_ALPHA= $0400 'read and write
  54. Const PNG_TRANSFORM_STRIP_FILLER= $0800 'write only
  55. Const PNG_COMPRESSION_TYPE_DEFAULT= 0
  56. Const PNG_FILTER_TYPE_DEFAULT= 0
  57. Const PNG_INTRAPIXEL_DIFFERENCING= 64
  58. Const PNG_INTERLACE_NONE= 0
  59. Const PNG_INTERLACE_ADAM7= 1
  60. Function png_sig_cmp( buf:Byte Ptr,start,count )
  61. Function png_create_read_struct( ver_string$z,user_error_ptr:Byte Ptr,user_error_fn:Byte Ptr,user_warning_fn:Byte Ptr)
  62. Function png_create_write_struct( ver_string$z,user_error_ptr:Byte Ptr,user_error_fn:Byte Ptr,user_warning_fn:Byte Ptr)
  63. Function png_destroy_read_struct( png_ptr Ptr,info_ptr1 Ptr,info_ptr2 Ptr )
  64. Function png_destroy_write_struct( png_ptr Ptr,info_ptr1 Ptr,info_ptr2 Ptr )
  65. Function png_create_info_struct( png_ptr )
  66. Function png_init_io( png_ptr,c_stream )
  67. Function png_set_sig_bytes( png_ptr,number )
  68. Function png_set_read_fn( png_ptr,user:Byte Ptr,read_fn(png_ptr,buf:Byte Ptr,size) )
  69. Function png_set_write_fn( png_ptr,user:Byte Ptr,write_fn(png_ptr,buf:Byte Ptr,size),flush_fn(png_ptr) )
  70. Function png_set_expand( png_ptr )
  71. Function png_set_strip_16( png_ptr )
  72. Function png_set_gray_to_rgb( png_ptr )
  73. Function png_set_compression_level( png_ptr,level )
  74. Function png_set_compression_strategy( png_ptr,strategy )
  75. Function png_read_png( png_ptr,info_ptr,png_transforms,reserved )
  76. Function png_write_png( png_ptr,info_ptr,png_transforms,reserved )
  77. Function png_get_rows:Byte Ptr Ptr( png_ptr,info_ptr )
  78. Function png_set_rows( png_ptr,info_ptr,rows:Byte Ptr )
  79. Function png_get_IHDR( png_ptr,info_ptr,width Var,height Var,bit_depth Var,color_type Var,interlace_type Var,compression_type Var,filter_method Var )
  80. Function png_set_IHDR( png_ptr,info_ptr,width,height,bit_depth,color_type,interlace_type,compression_type,filter_method )
  81. End Extern