#include "xna/content/lzx/decoder.hpp" #include "libmspack/mspack.h" #include "libmspack/lzx.h" namespace xna { LzxDecoder::LzxDecoder(int window) { if (window < 15 || window > 21) return; window_bits = window; } int LzxDecoder::Decompress(Stream* inData, int inLen, Stream* outData, int outLen) { mspack_file* input = nullptr; mspack_file* output = nullptr; auto lzxstream = lzxd_init( //struct mspack_system* system, nullptr, //struct mspack_file* input, input + inData->Position(), //struct mspack_file* output, output + outData->Position(), //int window_bits, window_bits, //int reset_interval, 0, //int input_buffer_size, inLen, //off_t output_length, outLen, //char is_delta 0 ); auto result = lzxd_decompress( //struct lzxd_stream* lzx, lzxstream, //off_t out_bytes 0 ); return result; } }