#ifndef _LIBTCOD_H
#define _LIBTCOD_H
#if defined( _MSC_VER )
# define TCOD_VISUAL_STUDIO
# define TCOD_WINDOWS
# ifdef _WIN64
# define TCOD_WIN64
# define TCOD_64BITS
# else
# define TCOD_WIN32
# endif
#elif defined( __MINGW32__ )
# define TCOD_WINDOWS
# define TCOD_MINGW32
# define TCOD_WIN32
#elif defined( __HAIKU__ )
# define TCOD_HAIKU
# define TCOD_GCC
# if __WORDSIZE == 64
# define TCOD_64BITS
# endif
#elif defined( __linux )
# define TCOD_LINUX
# define TCOD_GCC
# if __WORDSIZE == 64
# define TCOD_LINUX64
# define TCOD_64BITS
# else
# define TCOD_LINUX32
# endif
#elif defined( __FreeBSD__ )
# define TCOD_FREEBSD
# define TCOD_GCC
# if __WORDSIZE == 64
# define TCOD_FREEBSD64
# define TCOD_64BITS
# else
# define TCOD_FREEBSD32
# endif
#elif defined (__APPLE__) && defined (__MACH__)
# define TCOD_MACOSX
# define TCOD_GCC
#endif
#ifndef NO_UNICODE
#include <wchar.h>
#endif
#ifdef TCOD_MACOSX
#define _SDL_main_h
#include "SDL/SDL.h"
#endif
typedef unsigned char uint8;
typedef char int8;
typedef unsigned short uint16;
typedef short int16;
typedef unsigned int uint32;
typedef int int32;
typedef long intptr;
typedef unsigned long uintptr;
#define TCOD_HEXVERSION 0x010502
#define TCOD_STRVERSION "1.5.2"
#define TCOD_TECHVERSION 0x01050200
#ifndef __cplusplus
#ifndef bool
typedef uint8 bool;
#define false ((bool)0)
#define true ((bool)1)
#endif
#else
#define bool uint8
#endif
#ifdef TCOD_WINDOWS
#ifdef LIBTCOD_EXPORTS
#define TCODLIB_API __declspec(dllexport)
#else
#define TCODLIB_API __declspec(dllimport)
#endif
#else
#define TCODLIB_API
#endif
#ifdef __cplusplus
extern "C" {
#endif
TCODLIB_API char *TCOD_strdup(const char *s);
TCODLIB_API int TCOD_strcasecmp(const char *s1, const char *s2);
TCODLIB_API int TCOD_strncasecmp(const char *s1, const char *s2, size_t n);
#if defined(TCOD_WINDOWS)
char *strcasestr (const char *haystack, const char *needle);
#endif
#if defined(TCOD_LINUX) || defined(TCOD_HAIKU) || defined(TCOD_FREEBSD) || defined(TCOD_MACOSX)
#define vsnwprintf vswprintf
#endif
#ifdef TCOD_WINDOWS
#define vsnwprintf _vsnwprintf
#endif
#define MAX(a,b) ((a)<(b)?(b):(a))
#define MIN(a,b) ((a)>(b)?(b):(a))
#define ABS(a) ((a)<0?-(a):(a))
#define CLAMP(a, b, x) ((x) < (a) ? (a) : ((x) > (b) ? (b) : (x)))
#define LERP(a, b, x) ( (a) + (x) * ((b) - (a)) )
#include "list.h"
#include "color.h"
#include "console.h"
#include "image.h"
#include "mouse.h"
#include "sys.h"
#include "mersenne.h"
#include "bresenham.h"
#include "noise.h"
#include "fov.h"
#include "path.h"
#include "lex.h"
#include "parser.h"
#include "tree.h"
#include "bsp.h"
#include "heightmap.h"
#include "zip.h"
#include "namegen.h"
#include "txtfield.h"
#ifdef __cplusplus
#undef bool
}
#endif
#endif