source: XMLIO_V2/external/include/Poco/Types.h @ 80

Last change on this file since 80 was 80, checked in by ymipsl, 14 years ago

ajout lib externe

  • Property svn:eol-style set to native
File size: 6.3 KB
Line 
1//
2// Types.h
3//
4// $Id: //poco/1.3/Foundation/include/Poco/Types.h#1 $
5//
6// Library: Foundation
7// Package: Core
8// Module:  Types
9//
10// Definitions of fixed-size integer types for various platforms
11//
12// Copyright (c) 2004-2006, Applied Informatics Software Engineering GmbH.
13// and Contributors.
14//
15// Permission is hereby granted, free of charge, to any person or organization
16// obtaining a copy of the software and accompanying documentation covered by
17// this license (the "Software") to use, reproduce, display, distribute,
18// execute, and transmit the Software, and to prepare derivative works of the
19// Software, and to permit third-parties to whom the Software is furnished to
20// do so, all subject to the following:
21//
22// The copyright notices in the Software and this entire statement, including
23// the above license grant, this restriction and the following disclaimer,
24// must be included in all copies of the Software, in whole or in part, and
25// all derivative works of the Software, unless such copies or derivative
26// works are solely in the form of machine-executable object code generated by
27// a source language processor.
28//
29// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
30// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
31// FITNESS FOR A PARTICULAR PURPOSE, TITLE AND NON-INFRINGEMENT. IN NO EVENT
32// SHALL THE COPYRIGHT HOLDERS OR ANYONE DISTRIBUTING THE SOFTWARE BE LIABLE
33// FOR ANY DAMAGES OR OTHER LIABILITY, WHETHER IN CONTRACT, TORT OR OTHERWISE,
34// ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
35// DEALINGS IN THE SOFTWARE.
36//
37
38
39#ifndef Foundation_Types_INCLUDED
40#define Foundation_Types_INCLUDED
41
42
43#include "Poco/Foundation.h"
44
45
46namespace Poco {
47
48
49#if defined(_MSC_VER)
50        //
51        // Windows/Visual C++
52        //
53        typedef signed char            Int8;
54        typedef unsigned char          UInt8;
55        typedef signed short           Int16;
56        typedef unsigned short         UInt16;
57        typedef signed int             Int32;
58        typedef unsigned int           UInt32;
59        typedef signed __int64         Int64;
60        typedef unsigned __int64       UInt64;
61        #if defined(_WIN64)
62                #define POCO_PTR_IS_64_BIT 1
63                typedef signed __int64     IntPtr;
64                typedef unsigned __int64   UIntPtr;
65        #else
66                typedef signed long        IntPtr;
67                typedef unsigned long      UIntPtr;
68        #endif
69        #define POCO_HAVE_INT64 1
70#elif defined(__GNUC__)
71        //
72        // Unix/GCC
73        //
74        typedef signed char            Int8;
75        typedef unsigned char          UInt8;
76        typedef signed short           Int16;
77        typedef unsigned short         UInt16;
78        typedef signed int             Int32;
79        typedef unsigned int           UInt32;
80        typedef signed long            IntPtr;
81        typedef unsigned long          UIntPtr;
82        #if defined(__LP64__)
83                #define POCO_PTR_IS_64_BIT 1
84                #define POCO_LONG_IS_64_BIT 1
85                typedef signed long        Int64;
86                typedef unsigned long      UInt64;
87        #else
88                typedef signed long long   Int64;
89                typedef unsigned long long UInt64;
90        #endif
91        #define POCO_HAVE_INT64 1
92#elif defined(__DECCXX)
93        //
94        // Compaq C++
95        //
96        typedef signed char            Int8;
97        typedef unsigned char          UInt8;
98        typedef signed short           Int16;
99        typedef unsigned short         UInt16;
100        typedef signed int             Int32;
101        typedef unsigned int           UInt32;
102        typedef signed __int64         Int64;
103        typedef unsigned __int64       UInt64;
104        #if defined(__VMS)
105                #if defined(__32BITS)
106                        typedef signed long    IntPtr;
107                        typedef unsigned long  UIntPtr;
108                #else
109                        typedef Int64          IntPtr;
110                        typedef UInt64         UIntPtr;
111                        #define POCO_PTR_IS_64_BIT 1
112                #endif
113        #else
114                typedef signed long        IntPtr;
115                typedef unsigned long      UIntPtr;
116                #define POCO_PTR_IS_64_BIT 1
117                #define POCO_LONG_IS_64_BIT 1
118        #endif
119        #define POCO_HAVE_INT64 1
120#elif defined(__HP_aCC)
121        //
122        // HP Ansi C++
123        //
124        typedef signed char            Int8;
125        typedef unsigned char          UInt8;
126        typedef signed short           Int16;
127        typedef unsigned short         UInt16;
128        typedef signed int             Int32;
129        typedef unsigned int           UInt32;
130        typedef signed long            IntPtr;
131        typedef unsigned long          UIntPtr;
132        #if defined(__LP64__)
133                #define POCO_PTR_IS_64_BIT 1
134                #define POCO_LONG_IS_64_BIT 1
135                typedef signed long        Int64;
136                typedef unsigned long      UInt64;
137        #else
138                typedef signed long long   Int64;
139                typedef unsigned long long UInt64;
140        #endif
141        #define POCO_HAVE_INT64 1
142#elif defined(__SUNPRO_CC)
143        //
144        // SUN Forte C++
145        //
146        typedef signed char            Int8;
147        typedef unsigned char          UInt8;
148        typedef signed short           Int16;
149        typedef unsigned short         UInt16;
150        typedef signed int             Int32;
151        typedef unsigned int           UInt32;
152        typedef signed long            IntPtr;
153        typedef unsigned long          UIntPtr;
154        #if defined(__sparcv9)
155                #define POCO_PTR_IS_64_BIT 1
156                #define POCO_LONG_IS_64_BIT 1
157                typedef signed long        Int64;
158                typedef unsigned long      UInt64;
159        #else
160                typedef signed long long   Int64;
161                typedef unsigned long long UInt64;
162        #endif
163        #define POCO_HAVE_INT64 1
164#elif defined(__IBMCPP__)
165        //
166        // IBM XL C++
167        //
168        typedef signed char            Int8;
169        typedef unsigned char          UInt8;
170        typedef signed short           Int16;
171        typedef unsigned short         UInt16;
172        typedef signed int             Int32;
173        typedef unsigned int           UInt32;
174        typedef signed long            IntPtr;
175        typedef unsigned long          UIntPtr;
176        #if defined(__64BIT__)
177                #define POCO_PTR_IS_64_BIT 1
178                #define POCO_LONG_IS_64_BIT 1
179                typedef signed long        Int64;
180                typedef unsigned long      UInt64;
181        #else
182                typedef signed long long   Int64;
183                typedef unsigned long long UInt64;
184        #endif
185        #define POCO_HAVE_INT64 1
186#elif defined(__sgi)
187        //
188        // MIPSpro C++
189        //
190        typedef signed char            Int8;
191        typedef unsigned char          UInt8;
192        typedef signed short           Int16;
193        typedef unsigned short         UInt16;
194        typedef signed int             Int32;
195        typedef unsigned int           UInt32;
196        typedef signed long            IntPtr;
197        typedef unsigned long          UIntPtr;
198        #if _MIPS_SZLONG == 64
199                #define POCO_PTR_IS_64_BIT 1
200                #define POCO_LONG_IS_64_BIT 1
201                typedef signed long        Int64;
202                typedef unsigned long      UInt64;
203        #else
204                typedef signed long long   Int64;
205                typedef unsigned long long UInt64;
206        #endif
207        #define POCO_HAVE_INT64 1
208#endif
209
210
211} // namespace Poco
212
213
214#endif // Foundation_Types_INCLUDED
Note: See TracBrowser for help on using the repository browser.