Main Page   Namespace List   Class Hierarchy   Alphabetical List   Compound List   File List   Namespace Members   Compound Members  

defs.h

00001 // ----------------------------------------------------------------------------
00002 // Making or using sword as a Windows DLL
00003 // ----------------------------------------------------------------------------
00004 #ifndef SWORDDEFS_H
00005 #define SWORDDEFS_H
00006 
00007 #ifdef NO_SWORD_NAMESPACE
00008  #define SWORD_NAMESPACE_START
00009  #define SWORD_NAMESPACE_END
00010 #else
00011  #define SWORD_NAMESPACE_START namespace sword {
00012  #define SWORD_NAMESPACE_END }
00013 #endif
00014 
00015 
00016 SWORD_NAMESPACE_START
00017 
00018 #define FILTERPAD 16
00019 
00020 // _declspec works in BC++ 5 and later, as well as VC++
00021 #if defined(_MSC_VER)
00022 
00023 #  ifdef SWMAKINGDLL
00024 #    define SWDLLEXPORT _declspec( dllexport )
00025 #    define SWDLLEXPORT_DATA(type) _declspec( dllexport ) type
00026 #    define SWDLLEXPORT_CTORFN
00027 #  elif defined(SWUSINGDLL)
00028 #    define SWDLLEXPORT _declspec( dllimport )
00029 #    define SWDLLEXPORT_DATA(type) _declspec( dllimport ) type
00030 #    define SWDLLEXPORT_CTORFN
00031 #  else
00032 #    define SWDLLEXPORT
00033 #    define SWDLLEXPORT_DATA(type) type
00034 #    define SWDLLEXPORT_CTORFN
00035 #  endif
00036 
00037 #elif defined(__SWPM__)
00038 
00039 #  ifdef SWMAKINGDLL
00040 #    define SWDLLEXPORT _Export
00041 #    define SWDLLEXPORT_DATA(type) _Export type
00042 #    define SWDLLEXPORT_CTORFN
00043 #  elif defined(SWUSINGDLL)
00044 #    define SWDLLEXPORT _Export
00045 #    define SWDLLEXPORT_DATA(type) _Export type
00046 #    define SWDLLEXPORT_CTORFN
00047 #  else
00048 #    define SWDLLEXPORT
00049 #    define SWDLLEXPORT_DATA(type) type
00050 #    define SWDLLEXPORT_CTORFN
00051 #  endif
00052 
00053 #elif defined(__GNUWIN32__)
00054 
00055 #  ifdef SWMAKINGDLL
00056 #    define SWDLLEXPORT __declspec( dllexport )
00057 #    define SWDLLEXPORT_DATA(type) __declspec( dllexport ) type
00058 #    define SWDLLEXPORT_CTORFN
00059 #  elif defined(SWUSINGDLL)
00060 #    define SWDLLEXPORT __declspec( dllimport )
00061 #    define SWDLLEXPORT_DATA(type) __declspec( dllimport ) type
00062 #    define SWDLLEXPORT_CTORFN
00063 #  else
00064 #    define SWDLLEXPORT
00065 #    define SWDLLEXPORT_DATA(type) type
00066 #    define SWDLLEXPORT_CTORFN
00067 #  endif
00068 
00069 #elif defined(__BORLANDC__)
00070 #  ifdef SWMAKINGDLL
00071 #    define SWDLLEXPORT _export
00072 #    define SWDLLEXPORT_DATA(type) __declspec( dllexport ) type
00073 #    define SWDLLEXPORT_CTORFN
00074 #  elif defined(SWUSINGDLL)
00075 #    define SWDLLEXPORT __declspec( dllimport )
00076 #    define SWDLLEXPORT_DATA(type) __declspec( dllimport ) type
00077 #    define SWDLLEXPORT_CTORFN
00078 #  else
00079 #    define SWDLLEXPORT
00080 #    define SWDLLEXPORT_DATA(type) type
00081 #    define SWDLLEXPORT_CTORFN
00082 #  endif
00083 
00084 #else
00085 #  define SWDLLEXPORT
00086 #  define SWDLLEXPORT_DATA(type) type
00087 #  define SWDLLEXPORT_CTORFN
00088 #endif
00089 
00090 // For ostream, istream ofstream
00091 #if defined(__BORLANDC__) && defined( _RTLDLL )
00092 #  define SWDLLIMPORT __import
00093 #else
00094 #  define SWDLLIMPORT
00095 #endif
00096 
00097 SWORD_NAMESPACE_END
00098 #endif //SWORDDEFS_H

Generated on Thu Oct 31 12:11:28 2002 for The Sword Project by doxygen1.2.17