Compress/decompress memory automatically in trace files

This commit is contained in:
Dr. Chat
2015-11-20 16:58:40 -06:00
parent f3832a06c1
commit 0f2f4ab9b6
7 changed files with 78 additions and 8 deletions

View File

@@ -14,6 +14,8 @@
#include "xenia/gpu/trace_protocol.h"
#include "xenia/memory.h"
#include "third_party/zlib/zlib.h"
namespace xe {
namespace gpu {
@@ -148,5 +150,13 @@ void TraceReader::ParseTrace() {
}
}
bool TraceReader::DecompressMemory(const uint8_t* src, size_t src_size,
uint8_t* dest, size_t dest_size) {
uLongf dest_len = uint32_t(dest_size);
int ret = uncompress(dest, &dest_len, src, uint32_t(src_size));
assert_true(ret >= 0);
return ret >= 0;
}
} // namespace gpu
} // namespace xe