#ifndef LZ4_INTERFACE_DEF_H
#define LZ4_INTERFACE_DEF_H

/*
** This file was machine generated by idltool 53.7.
** Do not edit
*/ 

#ifndef EXEC_TYPES_H
#include <exec/types.h>
#endif
#ifndef EXEC_EXEC_H
#include <exec/exec.h>
#endif
#ifndef EXEC_INTERFACES_H
#include <exec/interfaces.h>
#endif


#ifdef __cplusplus
#ifdef __USE_AMIGAOS_NAMESPACE__
namespace AmigaOS {
#endif
extern "C" {
#endif

struct LZ4IFace
{
	struct InterfaceData Data;

	uint32 APICALL (*Obtain)(struct LZ4IFace *Self);
	uint32 APICALL (*Release)(struct LZ4IFace *Self);
	void APICALL (*Expunge)(struct LZ4IFace *Self);
	struct Interface * APICALL (*Clone)(struct LZ4IFace *Self);
	int32 APICALL (*LZ4_versionNumber)(struct LZ4IFace *Self);
	int32 APICALL (*LZ4_compress)(struct LZ4IFace *Self, CONST_APTR source, APTR dest, int32 sourceSize);
	int32 APICALL (*LZ4_decompress_safe)(struct LZ4IFace *Self, CONST_APTR source, APTR dest, int32 compressedSize, int32 maxDecompressedSize);
	int32 APICALL (*LZ4_compressBound)(struct LZ4IFace *Self, int32 isize);
	int32 APICALL (*LZ4_compress_limitedOutput)(struct LZ4IFace *Self, CONST_APTR source, APTR dest, int32 sourceSize, int32 maxOutputSize);
	int32 APICALL (*LZ4_decompress_fast)(struct LZ4IFace *Self, CONST_APTR source, APTR dest, int32 originalSize);
	int32 APICALL (*LZ4_decompress_safe_partial)(struct LZ4IFace *Self, CONST_APTR source, APTR dest, int32 compressedSize, int32 targetOutputSize, int32 maxDecompressedSize);
	int32 APICALL (*LZ4_compressHC)(struct LZ4IFace *Self, CONST_APTR source, APTR dest, int32 inputSize);
	int32 APICALL (*LZ4_compressHC_limitedOutput)(struct LZ4IFace *Self, CONST_APTR source, APTR dest, int32 inputSize, int32 maxOutputSize);
	int32 APICALL (*LZ4_compressHC2)(struct LZ4IFace *Self, CONST_APTR source, APTR dest, int32 inputSize, int32 compressionLevel);
	int32 APICALL (*LZ4_compressHC2_limitedOutput)(struct LZ4IFace *Self, CONST_APTR source, APTR dest, int32 inputSize, int32 maxOutputSize, int32 compressionLevel);
	int32 APICALL (*LZ4_sizeofStateHC)(struct LZ4IFace *Self);
	int32 APICALL (*LZ4_compressHC_withStateHC)(struct LZ4IFace *Self, APTR state, CONST_APTR source, APTR dest, int32 inputSize);
	int32 APICALL (*LZ4_compressHC_limitedOutput_withStateHC)(struct LZ4IFace *Self, APTR state, CONST_APTR source, APTR dest, int32 inputSize, int32 maxOutputSize);
	int32 APICALL (*LZ4_compressHC2_withStateHC)(struct LZ4IFace *Self, APTR state, CONST_APTR source, APTR dest, int32 inputSize, int32 compressionLevel);
	int32 APICALL (*LZ4_compressHC2_limitedOutput_withStateHC)(struct LZ4IFace *Self, APTR state, CONST_APTR source, APTR dest, int32 inputSize, int32 maxOutputSize, int32 compressionLevel);
};

#ifdef __cplusplus
}
#ifdef __USE_AMIGAOS_NAMESPACE__
}
#endif
#endif

#endif /* LZ4_INTERFACE_DEF_H */
