Main Page | Class Hierarchy | Class List | Directories | File List | Class Members

DLLExportAPI.h

00001 /* START_LICENSE_HEADER
00002 
00003 Copyright (C) 2000 Martin Piper, original design and program code
00004 Copyright (C) 2001-2005 Replica Software
00005 
00006 This program file is copyright (C) Replica Software and can only be used under license.
00007 For more information visit: http://www.replicanet.com/
00008 Or email: info@replicanet.com
00009 
00010 END_LICENSE_HEADER */
00011 #ifndef __DLLEXPORTAPI_H__
00012 #define __DLLEXPORTAPI_H__
00013 
00014 // These defines are here at the top-level so that they can be enabled by the user.
00015 // In an ideal world people will use the preprocessor define method, but in some cases the preprocessor defines cannot be changed.
00016 // Define this to enable ReplicaNet Visual Debugger information.
00017 //#define REPLICANET_VISUALDEBUGGER
00018 // Define this to disable all memory tracking, disable all overrides to new/delete/malloc/free/calloc/realloc
00019 //#define REPLICANET_NOMEMORYTRACKING
00020 // Define this to always include "RNPlatform/Inc/MemoryTracking.h"
00021 //#define REPLICANET_ALWAYSDOMEMORYTRACKING
00022 
00023 // This pragma removes the harmless warning from MSVC about browse information and the STL 
00024 #ifdef _MSC_VER
00025 #pragma warning(disable : 4786)
00026 #endif
00027 
00028 #if defined(_WIN32)
00029 
00030 // Remove some harmless warnings
00031 #pragma warning(disable: 4275)
00032 #pragma warning(disable: 4251)
00033 
00034 // Rules for creating DLL export/import or static LIB version of this library
00035 #ifdef DOREPNETEXPORTAPI
00036 
00037 #ifdef DOREPNETEXPORTAPIDEFS
00038 #define REPNETEXPORTAPI __declspec(dllexport)
00039 #else
00040 #define REPNETEXPORTAPI __declspec(dllimport)
00041 #endif
00042 #ifdef XPURLDLL_EXPORTS
00043 #define XPURLDLL_API __declspec(dllexport)
00044 #else
00045 #define XPURLDLL_API __declspec(dllimport)
00046 #endif
00047 #ifdef XPSESSIONDLL_EXPORTS
00048 #define XPSESSIONDLL_API __declspec(dllexport)
00049 #else
00050 #define XPSESSIONDLL_API __declspec(dllimport)
00051 #endif
00052 #ifdef REPLICANETDLL_EXPORTS
00053 #define REPLICANETDLL_API __declspec(dllexport)
00054 #else
00055 #define REPLICANETDLL_API __declspec(dllimport)
00056 #endif
00057 
00058 // If we are in DLL mode then auto-include the memory tracking if we can
00059 #ifndef REPLICANET_NOAUTOMATICINCLUDEMEMORYTRACKING
00060 #include "RNPlatform/Inc/MemoryTracking.h"
00061 #endif
00062 
00063 #else   // ifdef DOREPNETEXPORTAPIDEFS
00064 
00065 #define REPNETEXPORTAPI
00066 #define XPURLDLL_API
00067 #define XPSESSIONDLL_API
00068 #define REPLICANETDLL_API
00069 #endif
00070 
00071 
00073 #else   // if defined(_WIN32)
00074 
00075 
00076 #define REPNETEXPORTAPI
00077 #define XPURLDLL_API
00078 #define XPSESSIONDLL_API
00079 #define REPLICANETDLL_API
00080 
00081 #endif
00082 
00083 #ifdef REPLICANET_ALWAYSDOMEMORYTRACKING
00084 #include "RNPlatform/Inc/MemoryTracking.h"
00085 #endif
00086 
00087 
00088 #endif

Generated on Sun Oct 30 01:12:31 2005 for Platform by  doxygen 1.4.1