#ifndef _QUIK_STB_CONFIG_H_ #define _QUIK_STB_CONFIG_H_ #include "stddef.h" #if __GNUC__ || __MSC_VER #define __QUIK_FUNCTION__ __FUNCTION__ #define QEXTERN extern #else #define __QUIK_FUNCTION__ NULL #endif /* TODO: Change this declaration so we can export a DLL properly in windows. */ #define STBIDEF QEXTERN #define STBI_NO_STDIO 1 typedef void (*quik_failed_assert_cb_t)(const char *expr, const char *file, int line, const char* func); QEXTERN quik_failed_assert_cb_t quik_stbi_failed_assert; QEXTERN void quik_stbi_failed_assert_store(quik_failed_assert_cb_t cb); QEXTERN void quik_stbi_failed_assert_default(const char * expr, const char *file, int line, const char *function); /* Overwrite cstdlib functions so we can get as close as possible to freestanding environment. */ #define STBI_ASSERT(EXPR) do { \ if (!(EXPR)) \ quik_stbi_failed_assert(#EXPR, __FILE__, __LINE__ - 2, __QUIK_FUNCTION__); \ } while(0) #endif