axutil_utils_defines.h

00001 
00002 /*
00003  * Licensed to the Apache Software Foundation (ASF) under one or more
00004  * contributor license agreements.  See the NOTICE file distributed with
00005  * this work for additional information regarding copyright ownership.
00006  * The ASF licenses this file to You under the Apache License, Version 2.0
00007  * (the "License"); you may not use this file except in compliance with
00008  * the License.  You may obtain a copy of the License at
00009  *
00010  *      http://www.apache.org/licenses/LICENSE-2.0
00011  *
00012  * Unless required by applicable law or agreed to in writing, software
00013  * distributed under the License is distributed on an "AS IS" BASIS,
00014  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
00015  * See the License for the specific language governing permissions and
00016  * limitations under the License.
00017  */
00018 
00019 #ifndef AXUTIL_UTILS_DEFINES_H
00020 #define AXUTIL_UTILS_DEFINES_H
00021 
00022 #include <stddef.h>
00023 
00024 #ifdef __cplusplus
00025 extern "C"
00026 {
00027 #endif
00028 
00032     typedef char axis2_char_t;
00033     typedef int axis2_bool_t;
00034     typedef int axis2_status_t;
00035     typedef int axis2_scope_t;
00036     typedef unsigned int axis2_ssize_t;
00037     typedef char axis2_byte_t;
00038 
00039 #define AXIS2_CRLF_LENGTH 2
00040 
00041     /* These constant definitions should later be moved to platform dependant
00042      * files
00043      */
00044 
00045 #define AXIS2_EOLN '\0'
00046 
00050 #define AXIS2_TRUE 1
00051 #define AXIS2_FALSE 0
00052 
00056 #if defined(WIN32)
00057 #define AXIS2_EXPORT __declspec(dllexport)
00058 #else
00059 #define AXIS2_EXPORT
00060 #endif
00061 
00065 #if defined(WIN32)
00066 #define AXIS2_IMPORT __declspec(dllimport)
00067 #else
00068 #define AXIS2_IMPORT
00069 #endif
00070 
00074 #if defined(__GNUC__)
00075 #if defined(__i386)
00076 #define AXIS2_CALL __attribute__((cdecl))
00077 #else
00078 #define AXIS2_CALL
00079 
00080 
00081 #endif
00082 #else
00083 #if defined(__unix)
00084 #define AXIS2_CALL
00085 
00086 
00087 #else                           /* WIN32 */
00088 #define AXIS2_CALL __stdcall
00089 #endif
00090 #endif
00091 #define AXIS2_THREAD_FUNC AXIS2_CALL
00092 
00093 
00094 #ifdef DOXYGEN
00095 
00096     /* define these just so doxygen documents them */
00097 
00109 # define AXIS2_DECLARE_STATIC
00110 
00117 # define AXIS2_DECLARE_EXPORT
00118 
00119 #endif                          /* def DOXYGEN */
00120 
00121 #if !defined(WIN32)
00122 
00135 #define AXIS2_EXTERN
00136 
00145 #define AXIS2_DECLARE_NONSTD(type)     type
00146 
00155 #define AXIS2_DECLARE_DATA
00156 
00157 #elif defined(AXIS2_DECLARE_STATIC)
00158 #define AXIS2_EXTERN
00159 #define AXIS2_EXTERN_NONSTD
00160 #define AXIS2_DECLARE_DATA
00161 #elif defined(AXIS2_DECLARE_EXPORT)
00162 #define AXIS2_EXTERN                    AXIS2_EXPORT
00163 #define AXIS2_EXTERN_NONSTD             AXIS2_EXPORT
00164 #define AXIS2_DECLARE_DATA
00165 #else
00166 #define AXIS2_EXTERN                    AXIS2_IMPORT
00167 #define AXIS2_EXTERN_NONSTD             AXIS2_IMPORT
00168 #define AXIS2_DECLARE_DATA
00169 #endif
00170 
00174     typedef enum _axis2_xml_parser_type
00175     {
00176         AXIS2_XML_PARSER_TYPE_BUFFER = 1,
00177         AXIS2_XML_PARSER_TYPE_FILE,
00178         AXIS2_XML_PARSER_TYPE_DOC
00179     } axis2_xml_parser_type;
00180 
00181 #ifdef __cplusplus
00182 }
00183 #endif
00184 
00185 #endif                          /* AXIS2_UTILS_DEFINES_H */

Generated on Tue Jan 8 01:28:17 2008 for Axis2/C by  doxygen 1.5.1