axutil_utils_defines.h

00001 /*
00002  * Licensed to the Apache Software Foundation (ASF) under one or more
00003  * contributor license agreements.  See the NOTICE file distributed with
00004  * this work for additional information regarding copyright ownership.
00005  * The ASF licenses this file to You under the Apache License, Version 2.0
00006  * (the "License"); you may not use this file except in compliance with
00007  * the License.  You may obtain a copy of the License at
00008  *
00009  *      http://www.apache.org/licenses/LICENSE-2.0
00010  *
00011  * Unless required by applicable law or agreed to in writing, software
00012  * distributed under the License is distributed on an "AS IS" BASIS,
00013  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
00014  * See the License for the specific language governing permissions and
00015  * limitations under the License.
00016  */
00017 
00018 #ifndef AXUTIL_UTILS_DEFINES_H
00019 #define AXUTIL_UTILS_DEFINES_H
00020 
00021 #include <stddef.h>
00022 
00023 #ifdef __cplusplus
00024 extern "C"
00025 {
00026 #endif
00027 
00031     typedef char axis2_char_t;
00032     typedef int axis2_bool_t;
00033     typedef int axis2_status_t;
00034     typedef int axis2_scope_t;
00035     typedef unsigned int axis2_ssize_t;
00036     typedef char axis2_byte_t;
00037 
00038 #define AXIS2_CRLF_LENGTH 2
00039 
00040 /* These constant definitions should later be moved to platform dependant
00041  * files
00042  */
00043 
00044 #define AXIS2_EOLN '\0'
00045    
00049 #define AXIS2_TRUE 1
00050 #define AXIS2_FALSE 0
00051 
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 #endif
00080 #else
00081 #if defined(__unix)
00082 #define AXIS2_CALL
00083 #else                           /* WIN32 */
00084 #define AXIS2_CALL __stdcall
00085 #endif
00086 #endif
00087 #define AXIS2_THREAD_FUNC AXIS2_CALL
00088 
00089 #ifdef DOXYGEN
00090 
00091 /* define these just so doxygen documents them */
00092 
00104 # define AXIS2_DECLARE_STATIC
00105 
00111 # define AXIS2_DECLARE_EXPORT
00112 
00113 #endif                          /* def DOXYGEN */
00114 
00115 #if !defined(WIN32)
00116 
00124 #define AXIS2_EXTERN 
00125 
00134 #define AXIS2_DECLARE_NONSTD(type)     type
00135 
00144 #define AXIS2_DECLARE_DATA
00145 
00146 #elif defined(AXIS2_DECLARE_STATIC)
00147 #define AXIS2_EXTERN            
00148 #define AXIS2_EXTERN_NONSTD
00149 #define AXIS2_DECLARE_DATA
00150 #elif defined(AXIS2_DECLARE_EXPORT)
00151 #define AXIS2_EXTERN                    AXIS2_EXPORT
00152 #define AXIS2_EXTERN_NONSTD             AXIS2_EXPORT
00153 #define AXIS2_DECLARE_DATA             
00154 #else
00155 #define AXIS2_EXTERN                    AXIS2_IMPORT
00156 #define AXIS2_EXTERN_NONSTD             AXIS2_IMPORT
00157 #define AXIS2_DECLARE_DATA             
00158 #endif
00159 
00163 typedef enum _axis2_xml_parser_type
00164 {
00165     AXIS2_XML_PARSER_TYPE_BUFFER = 1,
00166     AXIS2_XML_PARSER_TYPE_FILE,
00167     AXIS2_XML_PARSER_TYPE_DOC
00168 } axis2_xml_parser_type;
00169 
00170     
00171 #ifdef __cplusplus
00172 }
00173 #endif
00174 
00175 #endif                          /* AXIS2_UTILS_DEFINES_H */

Generated on Thu May 3 12:31:01 2007 for Axis2/C by  doxygen 1.4.6