mirror of
https://github.com/WerWolv/ImHex-Patterns.git
synced 2026-04-02 21:47:39 -05:00
includes/hex: Added decompress functions
This commit is contained in:
@@ -2,6 +2,8 @@
|
|||||||
|
|
||||||
#include <hex/impl/imhex_check.pat>
|
#include <hex/impl/imhex_check.pat>
|
||||||
|
|
||||||
|
#include <std/mem.pat>
|
||||||
|
|
||||||
/*!
|
/*!
|
||||||
Library to allow decoding of more complex values
|
Library to allow decoding of more complex values
|
||||||
*/
|
*/
|
||||||
@@ -17,4 +19,46 @@ namespace hex::dec {
|
|||||||
return builtin::hex::dec::demangle(mangled_name);
|
return builtin::hex::dec::demangle(mangled_name);
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
Decompresses the bytes of a pattern into a section using the zlib algorithm
|
||||||
|
@param pattern The pattern whose bytes should be decompressed
|
||||||
|
@param sectionId The section to decompress the data into
|
||||||
|
@param window_size The window size passed to zlib
|
||||||
|
@return true if successful, false otherwise
|
||||||
|
*/
|
||||||
|
fn zlib_decompress(ref auto pattern, std::mem::SectionId sectionId, u64 window_size = 0) {
|
||||||
|
return builtin::hex::dec::zlib_decompress(pattern, sectionId, window_size);
|
||||||
|
};
|
||||||
|
|
||||||
|
/**
|
||||||
|
Decompresses the bytes of a pattern into a section using the bzip algorithm
|
||||||
|
@param pattern The pattern whose bytes should be decompressed
|
||||||
|
@param sectionId The section to decompress the data into
|
||||||
|
@return true if successful, false otherwise
|
||||||
|
*/
|
||||||
|
fn bzip_decompress(ref auto pattern, std::mem::SectionId sectionId) {
|
||||||
|
return builtin::hex::dec::bzip_decompress(pattern, sectionId);
|
||||||
|
};
|
||||||
|
|
||||||
|
/**
|
||||||
|
Decompresses the bytes of a pattern into a section using the LZMA algorithm
|
||||||
|
@param pattern The pattern whose bytes should be decompressed
|
||||||
|
@param sectionId The section to decompress the data into
|
||||||
|
@return true if successful, false otherwise
|
||||||
|
*/
|
||||||
|
fn lzma_decompress(ref auto pattern, std::mem::SectionId sectionId) {
|
||||||
|
return builtin::hex::dec::lzma_decompress(pattern, sectionId);
|
||||||
|
};
|
||||||
|
|
||||||
|
/**
|
||||||
|
Decompresses the bytes of a pattern into a section using the zstd algorithm
|
||||||
|
@param pattern The pattern whose bytes should be decompressed
|
||||||
|
@param sectionId The section to decompress the data into
|
||||||
|
@return true if successful, false otherwise
|
||||||
|
*/
|
||||||
|
fn zstd_decompress(ref auto pattern, std::mem::SectionId sectionId) {
|
||||||
|
return builtin::hex::dec::zstd_decompress(pattern, sectionId);
|
||||||
|
};
|
||||||
|
|
||||||
}
|
}
|
||||||
Reference in New Issue
Block a user