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

axis2_defines.h

Go to the documentation of this file.
00001 #ifndef AXIS2_DEFINES_H
00002 #define AXIS2_DEFINES_H
00003 
00009 #include <stddef.h>
00010 
00011 #ifdef __cplusplus
00012 extern "C"
00013 {
00014 #endif
00015 
00019     typedef char axis2_char_t;
00020     typedef int axis2_bool_t;
00021     typedef int axis2_status_t;
00022     typedef unsigned int axis2_ssize_t;
00023 
00024 /* These constant definitions should later be moved to platform dependant
00025  * files
00026  */
00027 
00028 #define AXIS2_EOLN '\0'
00029         
00033 #define AXIS2_TRUE 1
00034 #define AXIS2_FALSE 0
00035 
00039 #if defined(WIN32)
00040 #define AXIS2_EXPORT __declspec(dllexport)
00041 #else
00042 #define AXIS2_EXPORT
00043 #endif
00044 
00048 #if defined(WIN32)
00049 #define AXIS2_IMPORT __declspec(dllimport)
00050 #else
00051 #define AXIS2_IMPORT
00052 #endif
00053 
00057 #if defined(__GNUC__)
00058 #define AXIS2_CALL __attribute__((cdecl))
00059 #else
00060 #if defined(__unix)
00061 #define AXIS2_CALL
00062 #else                           /* WIN32 */
00063 #define AXIS2_CALL __stdcall
00064 #endif
00065 #endif
00066 
00067 #ifdef DOXYGEN
00068 /* define these just so doxygen documents them */
00069 
00081 # define AXIS2_DECLARE_STATIC
00082 
00088 # define AXIS2_DECLARE_EXPORT
00089 
00090 #endif                          /* def DOXYGEN */
00091 
00092 #if !defined(WIN32)
00093 
00101 #define AXIS2_DECLARE(type)            type AXIS2_CALL
00102 
00111 #define AXIS2_DECLARE_NONSTD(type)     type
00112 
00121 #define AXIS2_DECLARE_DATA
00122 
00123 #elif defined(AXIS2_DECLARE_STATIC)
00124 #define AXIS2_DECLARE(type)            type AXIS2_CALL
00125 #define AXIS2_DECLARE_NONSTD(type)     type
00126 #define AXIS2_DECLARE_DATA
00127 #elif defined(AXIS2_DECLARE_EXPORT)
00128 #define AXIS2_DECLARE(type)            AXIS2_EXPORT type AXIS2_CALL
00129 #define AXIS2_DECLARE_NONSTD(type)     AXIS2_EXPORT type
00130 #define AXIS2_DECLARE_DATA             AXIS2_EXPORT
00131 #else
00132 #define AXIS2_DECLARE(type)            AXIS2_IMPORT type AXIS2_CALL
00133 #define AXIS2_DECLARE_NONSTD(type)     AXIS2_IMPORT type
00134 #define AXIS2_DECLARE_DATA             AXIS2_IMPORT
00135 #endif
00136 
00137 
00138 #ifdef __cplusplus
00139 }
00140 #endif
00141 
00142 #endif                          /* AXIS2_DEFINES_H */

Generated on Wed Dec 7 07:58:24 2005 for Axis2/C by  doxygen 1.4.2