Skip to content

Commit cfa8efc

Browse files
authored
Add files via upload
1 parent c08f3d8 commit cfa8efc

File tree

2 files changed

+33
-0
lines changed

2 files changed

+33
-0
lines changed

source/nn/util/util_gzip.hpp

+28
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,28 @@
1+
#pragma once
2+
#include "nn/fs.hpp"
3+
4+
extern "C" {
5+
void* nnutilZlib_zcalloc(void* put_nullptr_here, size_t nmemb, size_t size);
6+
void nnutilZlib_zcfree(void* put_nullptr_here, void* ptr);
7+
}
8+
9+
namespace nn::util {
10+
const size_t DecompressZlibWorkBufferSize = 7160;
11+
const size_t DecompressGzipWorkBufferSize = DecompressZlibWorkBufferSize;
12+
13+
bool DecompressGzip(void* dst, size_t dstSize, const void* src, size_t srcSize, void* work, size_t workSize);
14+
size_t GetGzipDecompressedSize(const void* src, size_t srcSize);
15+
static ALWAYS_INLINE size_t GetGzipDecompressedSizeFromFile(nn::fs::FileHandle filehandle) {
16+
long in_size = 0;
17+
nn::fs::GetFileSize(&in_size, filehandle);
18+
uint32_t dec_size = 0;
19+
nn::fs::ReadFile(filehandle, in_size-4, &dec_size, 4);
20+
return (size_t)dec_size;
21+
}
22+
static ALWAYS_INLINE void* GzipAllocate(size_t size) {
23+
return nnutilZlib_zcalloc(nullptr, 1, size);
24+
}
25+
static ALWAYS_INLINE void GzipFree(void* ptr) {
26+
return nnutilZlib_zcfree(nullptr, ptr);
27+
}
28+
}

source/nn/util/util_snprintf.hpp

+5
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
#pragma once
2+
3+
namespace nn::util {
4+
int SNPrintf(char*, ulong, char const*, ...);
5+
}

0 commit comments

Comments
 (0)