miniz.monkey2 3.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394
  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. Struct mz_zip_archive
  19. Field m_archive_size:ULong
  20. Field m_central_directory_file_ofs:ULong
  21. Field m_total_files:UInt
  22. Field m_file_offset_alignment:UInt
  23. Field m_pAlloc:mz_alloc_func
  24. Field m_pFree:mz_free_func
  25. Field m_pRealloc:mz_realloc_func
  26. Field m_pAlloc_opaque:Void Ptr
  27. Field m_pRead:mz_file_read_func
  28. Field m_pWrite:mz_file_write_func
  29. Field m_pIO_opaque:Void Ptr
  30. Field m_pState:Void Ptr
  31. End
  32. Struct mz_zip_archive_file_stat
  33. Field m_file_index:UInt
  34. Field m_central_dir_ofs:UInt
  35. Field m_version_made_by:UShort
  36. Field m_version_needed:UShort
  37. Field m_bit_flag:UShort
  38. Field m_method:UShort
  39. Field m_crc32:UInt
  40. Field m_comp_size:ULong
  41. Field m_uncomp_size:ULong
  42. Field m_internal_attr:UShort
  43. Field m_external_attr:UInt
  44. Field m_local_header_ofs:ULong
  45. Field m_comment_size:UInt
  46. Field m_filename:char_t Ptr
  47. Field m_comment:char_t Ptr
  48. End
  49. Function mz_free:Void( address:Void Ptr )
  50. 'Inits a ZIP archive reader.
  51. 'These functions read and validate the archive's central directory.
  52. Function mz_zip_reader_init:Int( pZip:mz_zip_archive Ptr,size:Int,flags:Int )
  53. Function mz_zip_reader_init_mem:Int( pZip:mz_zip_archive Ptr,pMem:Void Ptr,size:Int,flags:Int )
  54. 'Ends archive reading, freeing all allocations, and closing the input archive file If mz_zip_reader_init_file() was used.
  55. Function mz_zip_reader_end:Int( pZip:mz_zip_archive Ptr )
  56. 'Returns the total number of files in the archive.
  57. Function mz_zip_reader_get_num_files:Int( pZip:mz_zip_archive Ptr )
  58. 'Attempts to locates a file in the archive's central directory.
  59. 'Valid flags: MZ_ZIP_FLAG_CASE_SENSITIVE, MZ_ZIP_FLAG_IGNORE_PATH
  60. 'Returns -1 If the file cannot be found.
  61. Function mz_zip_reader_locate_file:Int( pZip:mz_zip_archive Ptr,pName:CString,pComment:CString,flags:Int )
  62. 'Returns detailed information about an archive file entry.
  63. Function mz_zip_reader_file_stat:Int( pZip:mz_zip_archive Ptr,file_index:Int,pStat:mz_zip_archive_file_stat Ptr )
  64. 'Extracts a archive file to a memory buffer.
  65. Function mz_zip_reader_extract_to_mem:Int( pZip:mz_zip_archive Ptr,file_index:Int,pBuf:Void Ptr,buf_size:Int,flags:Int )
  66. Function mz_zip_reader_extract_file_to_mem:Int( pZip:mz_zip_archive Ptr,pFilename:CString,pBuf:Void Ptr,buf_size:Int,flags:Int )
  67. 'Extracts a archive file to a dynamically allocated heap buffer.
  68. Function mz_zip_reader_extract_to_heap:Void Ptr( pZip:mz_zip_archive Ptr,file_index:Int,pSize:size_t Ptr,flags:Int )
  69. Function mz_zip_reader_extract_file_to_heap:Void Ptr( pZip:mz_zip_archive Ptr,pFilename:CString,pSize:size_t Ptr,flags:Int )