mirror of
https://github.com/wheremyfoodat/Panda3DS.git
synced 2025-04-06 06:05:40 +12:00
17 lines
695 B
C++
17 lines
695 B
C++
#pragma once
|
|
#include <vector>
|
|
#include "helpers.hpp"
|
|
|
|
// For parsing the LZ77 format used for compressing the .code file in the ExeFS
|
|
namespace CartLZ77 {
|
|
// Retrieves the uncompressed size of the compressed LZ77 data stored in buffer with a specific compressed size
|
|
u32 decompressedSize(const u8* buffer, u32 compressedSize);
|
|
|
|
template <typename T>
|
|
static u32 decompressedSize(const std::vector<T>& buffer) {
|
|
return decompressedSize((u8*)buffer.data(), u32(buffer.size() * sizeof(T)));
|
|
}
|
|
|
|
// Decompresses an LZ77-compressed buffer stored in input to output
|
|
bool decompress(std::vector<u8>& output, const std::vector<u8>& input);
|
|
} // End namespace CartLZ77
|