#ifndef FOUG_C_GLOBAL_H #define FOUG_C_GLOBAL_H #if defined(WIN64) || defined(_WIN64) || defined(__WIN64__) \ || defined(WIN32) || defined(_WIN32) || defined(__WIN32__) || defined(__NT__) # define FOUG_DECL_EXPORT __declspec(dllexport) # define FOUG_DECL_IMPORT __declspec(dllimport) #else # define FOUG_DECL_EXPORT # define FOUG_DECL_IMPORT #endif /* WIN */ #ifdef FOUG_LIB_DLL # ifdef FOUG_LIB_MAKE_DLL # define FOUG_LIB_EXPORT FOUG_DECL_EXPORT # else # define FOUG_LIB_EXPORT FOUG_DECL_IMPORT # endif /* FOUG_LIB_MAKE_DLL */ #else # define FOUG_LIB_EXPORT #endif /* FOUG_LIB_DLL */ /* "config.h" is generated by cmake, it should reside in the out-of-source build dir. * In CMakeFiles.txt, the directory where resides "config.h" is added to the include path list */ #include "config.h" #ifdef FOUG_HAVE_STDINT_H # include #else typedef char int8_t; typedef unsigned char uint8_t; typedef short int16_t; typedef unsigned short uint16_t; typedef int int32_t; typedef unsigned int uint32_t; /*# ifdef _MSC_VER typedef __int64 int64_t; typedef unsigned __int64 uint64_t; # else typedef long long int64_t; typedef unsigned long long uint64_t; # endif*/ /* _MSC_VER */ #endif /* FOUG_USE_STDINT_H */ /*! Typedef for boolean type */ typedef int foug_bool_t; /*! This enum defines true/false boolean values */ enum foug_bool_value { FOUG_FALSE = 0, FOUG_TRUE = 1 }; /*! Typedef for 32bit real type (float) */ typedef float foug_real32_t; /*! Typedef for 64bit real type (double) */ typedef double foug_real64_t; #ifndef FOUG_INLINE # if defined(__GNUC__) # define FOUG_INLINE __inline__ /* Compatible with C90 */ # elif defined(_MSC_VER) # define FOUG_INLINE __inline # else # define FOUG_INLINE # endif #endif /* !FOUG_INLINE */ #endif /* FOUG_C_GLOBAL_H */