00001 #ifndef SRC_INC_COMMON_HPP
00002 #define SRC_INC_COMMON_HPP
00003
00004 #include <boost/config.hpp>
00005
00006 #ifdef _WIN32
00007 #ifdef BUILD_DLL
00008 #define GCPP_PUBLIC_SYMBOL __declspec(dllexport)
00009 #elif TEST_DLL
00010 #define GCPP_PUBLIC_SYMBOL
00011 #else
00012 #define SOL_PUBLIC_SYMBOL __declspec(dllimport)
00013 #endif
00014 #define GCPP_CALLTYPE __stdcall
00015
00016 #if _MSC_VER <= 1400
00017 #define and &&
00018 #define or ||
00019 #define xor ^
00020 #define not !
00021 #endif
00022 #else
00023 #define GCPP_PUBLIC_SYMBOL
00024 #define GCPP_CALLTYPE
00025 #endif
00026
00027 #if defined(BOOST_HAS_THREADS)
00028 #include <boost/detail/lightweight_mutex.hpp>
00029 #define GCPP_MUTEX boost::detail::lightweight_mutex
00030 #define GCPP_LOCK boost::detail::lightweight_mutex::scoped_lock
00031 #else
00032 #define GCPP_MUTEX int
00033 #define GCPP_LOCK int
00034 #endif
00035
00036 namespace GCpp
00037 {
00038
00039 typedef unsigned char Byte;
00040
00041 }
00042
00043 #endif