3 using System.Runtime.InteropServices;
5 namespace SiliconStudio.Core.LZ4.Services
7 internal abstract class NativeLZ4Base
11 NativeLibrary.PreloadLibrary(NativeLibrary.LibraryName);
14 [DllImport(NativeLibrary.LibraryName, CallingConvention = NativeLibrary.CallConvention)]
15 protected unsafe
static extern int I32_LZ4_uncompress(byte* source, byte*
dest,
int maxOutputSize);
17 [DllImport(NativeLibrary.LibraryName, CallingConvention = NativeLibrary.CallConvention)]
18 protected unsafe
static extern int I32_LZ4_uncompress_unknownOutputSize(byte* source, byte*
dest,
int inputSize,
int maxOutputSize);
20 [DllImport(NativeLibrary.LibraryName, CallingConvention = NativeLibrary.CallConvention)]
23 [DllImport(NativeLibrary.LibraryName, CallingConvention = NativeLibrary.CallConvention)]
24 protected unsafe
static extern int I32_LZ4_compressHC_limitedOutput(byte* source, byte*
dest,
int inputSize,
int maxOutputSize);
26 [DllImport(NativeLibrary.LibraryName, CallingConvention = NativeLibrary.CallConvention)]
27 protected unsafe
static extern int I64_LZ4_uncompress(byte* source, byte*
dest,
int maxOutputSize);
29 [DllImport(NativeLibrary.LibraryName, CallingConvention = NativeLibrary.CallConvention)]
30 protected unsafe
static extern int I64_LZ4_uncompress_unknownOutputSize(byte* source, byte*
dest,
int inputSize,
int maxOutputSize);
32 [DllImport(NativeLibrary.LibraryName, CallingConvention = NativeLibrary.CallConvention)]
35 [DllImport(NativeLibrary.LibraryName, CallingConvention = NativeLibrary.CallConvention)]
36 protected unsafe
static extern int I64_LZ4_compressHC_limitedOutput(byte* source, byte*
dest,
int inputSize,
int maxOutputSize);
char int int maxOutputSize