00001
00002
00003
00004
00005
00006
00007
00008
00009
00011
00012
00022 #ifndef LT_DEFINE_H
00023 #define LT_DEFINE_H
00024
00025 #include "lt_platform.h"
00026
00027 #if defined(LT_COMPILER_MS)
00028 #pragma warning(push,4)
00029 #endif
00030
00031
00036
00037 #if defined(__cplusplus)
00038
00039 #define LT_CPLUSPLUS
00040
00041 #define LT_DISALLOW_COPY_CONSTRUCTOR(classname) \
00042 private: \
00043 classname(const classname &); \
00044 classname &operator=(const classname &)
00045
00046 #endif
00047
00048
00049
00050
00055
00056 #if defined(__cplusplus) && \
00057 ( defined(LT_COMPILER_MS) || \
00058 defined(LT_COMPILER_GNU) || \
00059 defined(LT_COMPILER_SUN) || \
00060 defined(_USE_NAMESPACE_) )
00061
00062 #define LT_NAMESPACE_SUPPORT
00063 #else
00064
00065 #undef LT_NAMESPACE_SUPPORT
00066 #endif
00067
00068 #ifdef LT_NAMESPACE_SUPPORT
00069
00070 #define LT_BEGIN_NAMESPACE( theNameSpace ) namespace theNameSpace {
00071
00072 #define LT_END_NAMESPACE( theNameSpace ) }
00073
00075 #define LT_BEGIN_NAMELESS_NAMESPACE namespace {
00076
00077 #define LT_END_NAMELESS_NAMESPACE }
00078
00080 #define LT_USE_NAMESPACE( theNameSpace ) using namespace theNameSpace;
00081
00082 #define LT_USE_NAME( theName ) using theName;
00083 #else
00084 #define LT_BEGIN_NAMESPACE( theNameSpace )
00085 #define LT_END_NAMESPACE( theNameSpace )
00086
00087 #define LT_BEGIN_NAMELESS_NAMESPACE
00088 #define LT_END_NAMELESS_NAMESPACE
00089
00090 #define LT_USE_NAMESPACE( theNameSpace )
00091 #define LT_USE_NAME( theName )
00092 #endif
00093
00094
00095
00096 #define LT_BEGIN_LIZARDTECH_NAMESPACE namespace LizardTech {
00097 #define LT_END_LIZARDTECH_NAMESPACE }
00098 #define LT_USING_LIZARDTECH_NAMESPACE using namespace LizardTech;
00099
00107
00108 #if (defined(LT_OS_WIN) && defined(_DEBUG))
00109
00110 #define LT_DEBUG
00111 #endif
00112
00120
00122 #define LT_STRINGIFY(x) #x
00123
00124 #define LT_XSTRINGIFY(x) LT_STRINGIFY(x)
00125
00127 #define LT_MIN(A,B) ((A) < (B) ? (A) : (B))
00128
00129 #define LT_MAX(A,B) ((A) > (B) ? (A) : (B))
00130
00141 #define LT_STATUSSTRING_ADD(NUM,STR)
00142
00146 #if defined(LT_COMPILER_MS)
00147 #pragma warning(pop)
00148 #endif
00149
00150
00151
00152 #ifdef LT_COMPILER_MS
00153 #pragma warning(disable:4786)
00154 #endif
00155
00156
00157
00158
00159 #ifdef LT_OS_WINCE
00160 #define WINCE_STORAGECARD "/Storage Card/"
00161 #else
00162 #define WINCE_STORAGECARD ""
00163 #endif
00164
00165
00166
00167 #include "lt_types.h"
00168
00169 #endif