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

c:/home/kevn/src/animaniac/ani/aniConfig.h

Go to the documentation of this file.
00001 /*************** <auto-copyright.pl BEGIN do not edit this line> **************
00002  *
00003  * Animaniac is (C) Copyright 2000,2001 Kevin Meinert
00004  *
00005  * Original Authors:
00006  *   Kevin Meinert
00007  *
00008  *
00009  *
00010  * This library is free software; you can redistribute it and/or
00011  * modify it under the terms of the GNU Library General Public
00012  * License as published by the Free Software Foundation; either
00013  * version 2 of the License, or (at your option) any later version.
00014  *
00015  * This library is distributed in the hope that it will be useful,
00016  * but WITHOUT ANY WARRANTY; without even the implied warranty of
00017  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
00018  * Library General Public License for more details.
00019  *
00020  * You should have received a copy of the GNU Library General Public
00021  * License along with this library; if not, write to the
00022  * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
00023  * Boston, MA 02111-1307, USA.
00024  *
00025  * -----------------------------------------------------------------
00026  * File:          $RCSfile: aniConfig.h,v $
00027  * Date modified: $Date: 2002/01/11 16:34:18 $
00028  * Version:       $Revision: 1.2 $
00029  * -----------------------------------------------------------------
00030  *
00031  *************** <auto-copyright.pl END do not edit this line> ***************/
00032 
00033 #ifndef _ANI_CONFIG_H_
00034 #define _ANI_CONFIG_H_
00035 
00036 
00037 /* This should always be included first. */
00038 #include <syn/synDefines.h>
00039 
00040 #ifdef _DEBUG
00041 #   define ANI_DEBUG
00042 #else
00043 #   define ANI_OPT
00044 #endif
00045 
00046 #ifdef WIN32
00047 /* Exclude rarely-used stuff from Windows headers */
00048 #define WIN32_LEAN_AND_MEAN
00049 
00050 /* identifier truncated to 255 characters in the debug information */
00051 #pragma warning(disable:4786)
00052 
00053 #include <windows.h>
00054 
00055 /* extern HINStanCE g_hInst = NULL; */
00056 #endif   /* WIN32 */
00057 
00058 
00059 /* Common C++ includes. */
00060 /* Put here for pre-compiled headers. */
00061 #ifdef __cplusplus
00062 #include <iostream>
00063 #include <iomanip>
00064 #include <fstream>
00065 #include <vector>
00066 #include <map>
00067 #include <string>
00068 #include <algorithm>
00069 #include <math.h>
00070 
00071 #endif   /* __cplusplus */
00072 
00073 #ifdef HAVE_UNISTD_H
00074 #include <unistd.h>
00075 #endif
00076 
00077 #ifdef HAVE_STRINGS_H
00078 #include <strings.h>
00079 #endif
00080 
00081 /*
00082  * ----------------------------------------------------------------------------
00083  * DLL-related macros.  These are based on the macros used by NSPR.  Use
00084  * ANI_EXTERN for the prototype and ANI_IMPLEMENT for the implementation.
00085  * ----------------------------------------------------------------------------
00086  */
00087 #ifdef WIN32
00088 
00089 #   if defined(__GNUC__)
00090 #       undef _declspec
00091 #       define _declspec(x) __declspec(x)
00092 #   endif
00093 
00094 #   define ANI_EXPORT(__type)      _declspec(dllexport) __type
00095 #   define ANI_EXPORT_CLASS        _declspec(dllexport)
00096 #   define ANI_EXPORT_DATA(__type) _declspec(dllexport) __type
00097 #   define ANI_IMPORT(__type)      _declspec(dllimport) __type
00098 #   define ANI_IMPORT_DATA(__type) _declspec(dllimport) __type
00099 #   define ANI_IMPORT_CLASS        _declspec(dllimport)
00100 
00101 #   define ANI_EXTERN(__type)         extern _declspec(dllexport) __type
00102 #   define ANI_IMPLEMENT(__type)      _declspec(dllexport) __type
00103 #   define ANI_EXTERN_DATA(__type)    extern _declspec(dllexport) __type
00104 #   define ANI_IMPLEMENT_DATA(__type) _declspec(dllexport) __type
00105 
00106 #   define ANI_CALLBACK
00107 #   define ANI_CALLBACK_DECL
00108 #   define ANI_STATIC_CALLBACK(__x) static __x
00109 
00110 #else   /* UNIX (where this stuff is simple!) */
00111 
00112 #   define ANI_EXPORT(__type)      __type
00113 #   define ANI_EXPORT_CLASS
00114 #   define ANI_EXPORT_DATA(__type) __type
00115 #   define ANI_IMPORT(__type)      __type
00116 #   define ANI_IMPORT_CLASS
00117 #   define ANI_IMPORT_DATA(__type) __type
00118 
00119 #   define ANI_EXTERN(__type)         extern __type
00120 #   define ANI_IMPLEMENT(__type)      __type
00121 #   define ANI_EXTERN_DATA(__type)    extern __type
00122 #   define ANI_IMPLEMENT_DATA(__type) __type
00123 
00124 #   define ANI_CALLBACK
00125 #   define ANI_CALLBACK_DECL
00126 #   define ANI_STATIC_CALLBACK(__x) static __x
00127 
00128 #endif  /* WIN32 */
00129 
00130 #ifdef _ANI_BUILD_
00131 #   define ANI_API(__type)      ANI_EXPORT(__type)
00132 #   define ANI_CLASS_API                ANI_EXPORT_CLASS
00133 #   define ANI_DATA_API(__type) ANI_EXPORT_DATA(__type)
00134 #else
00135 #   define ANI_API(__type)      ANI_IMPORT(__type)
00136 #   define ANI_CLASS_API                ANI_IMPORT_CLASS
00137 #   define ANI_DATA_API(__type) ANI_IMPORT_DATA(__type)
00138 #endif
00139 
00140 #endif   /* _ANI_CONFIG_H_ */

Generated on Wed Jun 12 01:54:00 2002 for Animaniac by doxygen1.2.15