miniz.monkey2 3.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101
  1. Namespace miniz
  2. #Import "<libc.monkey2>"
  3. #Import "native/miniz.c"
  4. #Import "native/miniz.h"
  5. Using libc
  6. Extern
  7. Enum mz_zip_mode
  8. End
  9. Const MZ_ZIP_MODE_INVALID:mz_zip_mode
  10. Const MZ_ZIP_MODE_READING:mz_zip_mode
  11. Const MZ_ZIP_MODE_WRITING:mz_zip_mode
  12. Const MZ_ZIP_MODE_WRITING_HAS_BEEN_FINALIZED:mz_zip_mode
  13. 'Alias mz_alloc_func:Void Ptr( opaque:Void Ptr,items:size_t,size:size_t )
  14. 'Alias mz_free_func:Void( opaque:Void Ptr,address:Void Ptr )
  15. 'Alias mz_realloc_func:Void Ptr( opaque:Void Ptr,address:Void Ptr,items:size_t,size:size_t )
  16. 'Alias mz_file_read_func:size_t( pOpaque:Void Ptr,file_ofs:ULong,buf:Void Ptr,n:size_t )
  17. 'Alias mz_file_write_func:size_t( pOpaque:Byte Ptr,file_ofs:ULong,buf:Void Ptr,n:size_t )
  18. Alias mz_alloc_func:Void Ptr
  19. Alias mz_free_func:Void Ptr
  20. Alias mz_realloc_func:Void Ptr
  21. Alias mz_file_read_func:Void Ptr
  22. Alias mz_file_write_func:Void Ptr
  23. Struct mz_zip_archive
  24. Field m_archive_size:ULong
  25. Field m_central_directory_file_ofs:ULong
  26. Field m_total_files:UInt
  27. Field m_file_offset_alignment:UInt
  28. Field m_pAlloc:mz_alloc_func
  29. Field m_pFree:mz_free_func
  30. Field m_pRealloc:mz_realloc_func
  31. Field m_pAlloc_opaque:Void Ptr
  32. Field m_pRead:mz_file_read_func
  33. Field m_pWrite:mz_file_write_func
  34. Field m_pIO_opaque:Void Ptr
  35. Field m_pState:Void Ptr
  36. End
  37. Struct mz_zip_archive_file_stat
  38. Field m_file_index:UInt
  39. Field m_central_dir_ofs:UInt
  40. Field m_version_made_by:UShort
  41. Field m_version_needed:UShort
  42. Field m_bit_flag:UShort
  43. Field m_method:UShort
  44. Field m_crc32:UInt
  45. Field m_comp_size:ULong
  46. Field m_uncomp_size:ULong
  47. Field m_internal_attr:UShort
  48. Field m_external_attr:UInt
  49. Field m_local_header_ofs:ULong
  50. Field m_comment_size:UInt
  51. Field m_filename:char_t Ptr
  52. Field m_comment:char_t Ptr
  53. End
  54. Function mz_free:Void( address:Void Ptr )
  55. 'Inits a ZIP archive reader.
  56. 'These functions read and validate the archive's central directory.
  57. Function mz_zip_reader_init:Int( pZip:mz_zip_archive Ptr,size:Int,flags:Int )
  58. Function mz_zip_reader_init_mem:Int( pZip:mz_zip_archive Ptr,pMem:Void Ptr,size:Int,flags:Int )
  59. 'Ends archive reading, freeing all allocations, and closing the input archive file If mz_zip_reader_init_file() was used.
  60. Function mz_zip_reader_end:Int( pZip:mz_zip_archive Ptr )
  61. 'Returns the total number of files in the archive.
  62. Function mz_zip_reader_get_num_files:Int( pZip:mz_zip_archive Ptr )
  63. 'Attempts to locates a file in the archive's central directory.
  64. 'Valid flags: MZ_ZIP_FLAG_CASE_SENSITIVE, MZ_ZIP_FLAG_IGNORE_PATH
  65. 'Returns -1 If the file cannot be found.
  66. Function mz_zip_reader_locate_file:Int( pZip:mz_zip_archive Ptr,pName:CString,pComment:CString,flags:Int )
  67. 'Returns detailed information about an archive file entry.
  68. Function mz_zip_reader_file_stat:Int( pZip:mz_zip_archive Ptr,file_index:Int,pStat:mz_zip_archive_file_stat Ptr )
  69. 'Extracts a archive file to a memory buffer.
  70. Function mz_zip_reader_extract_to_mem:Int( pZip:mz_zip_archive Ptr,file_index:Int,pBuf:Void Ptr,buf_size:Int,flags:Int )
  71. Function mz_zip_reader_extract_file_to_mem:Int( pZip:mz_zip_archive Ptr,pFilename:CString,pBuf:Void Ptr,buf_size:Int,flags:Int )
  72. 'Extracts a archive file to a dynamically allocated heap buffer.
  73. Function mz_zip_reader_extract_to_heap:Void Ptr( pZip:mz_zip_archive Ptr,file_index:Int,pSize:size_t Ptr,flags:Int )
  74. Function mz_zip_reader_extract_file_to_heap:Void Ptr( pZip:mz_zip_archive Ptr,pFilename:CString,pSize:size_t Ptr,flags:Int )