/*
 * slb/lzma.h - Utility functions for the application,
 * when using the shared library.
 *
 * Copyright (C) 2019 Thorsten Otto
 */
#ifndef __SLB_LZMA_H__
#define __SLB_LZMA_H__ 1

#ifndef LZMA_SLB
#define LZMA_SLB 1
#endif

#include <lzma.h>

#ifndef __CDECL
#define __CDECL
#endif

#include <mint/slb.h>

#include <stdio.h>

#ifdef __cplusplus
extern "C" {
#endif

#define LZMA_SHAREDLIB_NAME "lzma.slb"

long slb_lzma_open(const char *slbpath);
void slb_lzma_close(void);
SLB *slb_lzma_get(void);

/* internal helper function */
long __CDECL lzma_slb_control(long fn, void *arg);

/* Get the full path of the shared library */
#define lzma_slb_libpath() ((const char *)lzma_slb_control(4, 0))


#ifdef __cplusplus
}
#endif

#endif /* __SLB_LZMA_H__ */
