1/* speex_types.h taken from libogg */
2/********************************************************************
3 *                                                                  *
4 * THIS FILE IS PART OF THE OggVorbis SOFTWARE CODEC SOURCE CODE.   *
5 * USE, DISTRIBUTION AND REPRODUCTION OF THIS LIBRARY SOURCE IS     *
6 * GOVERNED BY A BSD-STYLE SOURCE LICENSE INCLUDED WITH THIS SOURCE *
7 * IN 'COPYING'. PLEASE READ THESE TERMS BEFORE DISTRIBUTING.       *
8 *                                                                  *
9 * THE OggVorbis SOURCE CODE IS (C) COPYRIGHT 1994-2002             *
10 * by the Xiph.Org Foundation http://www.xiph.org/                  *
11 *                                                                  *
12 ********************************************************************
13
14 function: #ifdef jail to whip a few platforms into the UNIX ideal.
15 last mod: $Id: os_types.h 7524 2004-08-11 04:20:36Z conrad $
16
17 ********************************************************************/
18/**
19   @file speex_types.h
20   @brief Speex types
21*/
22#ifndef _SPEEX_TYPES_H
23#define _SPEEX_TYPES_H
24
25#if defined(_WIN32)
26
27#  if defined(__CYGWIN__)
28#    include <_G_config.h>
29     typedef _G_int32_t spx_int32_t;
30     typedef _G_uint32_t spx_uint32_t;
31     typedef _G_int16_t spx_int16_t;
32     typedef _G_uint16_t spx_uint16_t;
33#  elif defined(__MINGW32__)
34     typedef short spx_int16_t;
35     typedef unsigned short spx_uint16_t;
36     typedef int spx_int32_t;
37     typedef unsigned int spx_uint32_t;
38#  elif defined(__MWERKS__)
39     typedef int spx_int32_t;
40     typedef unsigned int spx_uint32_t;
41     typedef short spx_int16_t;
42     typedef unsigned short spx_uint16_t;
43#  else
44     /* MSVC/Borland */
45     typedef __int32 spx_int32_t;
46     typedef unsigned __int32 spx_uint32_t;
47     typedef __int16 spx_int16_t;
48     typedef unsigned __int16 spx_uint16_t;
49#  endif
50
51#elif defined(__MACOS__)
52
53#  include <sys/types.h>
54   typedef SInt16 spx_int16_t;
55   typedef UInt16 spx_uint16_t;
56   typedef SInt32 spx_int32_t;
57   typedef UInt32 spx_uint32_t;
58
59#elif (defined(__APPLE__) && defined(__MACH__)) /* MacOS X Framework build */
60
61#  include <sys/types.h>
62   typedef int16_t spx_int16_t;
63   typedef u_int16_t spx_uint16_t;
64   typedef int32_t spx_int32_t;
65   typedef u_int32_t spx_uint32_t;
66
67#elif defined(__BEOS__)
68
69   /* Be */
70#  include <inttypes.h>
71   typedef int16_t spx_int16_t;
72   typedef u_int16_t spx_uint16_t;
73   typedef int32_t spx_int32_t;
74   typedef u_int32_t spx_uint32_t;
75
76#elif defined (__EMX__)
77
78   /* OS/2 GCC */
79   typedef short spx_int16_t;
80   typedef unsigned short spx_uint16_t;
81   typedef int spx_int32_t;
82   typedef unsigned int spx_uint32_t;
83
84#elif defined (DJGPP)
85
86   /* DJGPP */
87   typedef short spx_int16_t;
88   typedef int spx_int32_t;
89   typedef unsigned int spx_uint32_t;
90
91#elif defined(R5900)
92
93   /* PS2 EE */
94   typedef int spx_int32_t;
95   typedef unsigned spx_uint32_t;
96   typedef short spx_int16_t;
97
98#elif defined(__SYMBIAN32__)
99
100   /* Symbian GCC */
101   typedef signed short spx_int16_t;
102   typedef unsigned short spx_uint16_t;
103   typedef signed int spx_int32_t;
104   typedef unsigned int spx_uint32_t;
105
106#elif defined(CONFIG_TI_C54X) || defined (CONFIG_TI_C55X)
107
108   typedef short spx_int16_t;
109   typedef unsigned short spx_uint16_t;
110   typedef long spx_int32_t;
111   typedef unsigned long spx_uint32_t;
112
113#elif defined(CONFIG_TI_C6X)
114
115   typedef short spx_int16_t;
116   typedef unsigned short spx_uint16_t;
117   typedef int spx_int32_t;
118   typedef unsigned int spx_uint32_t;
119
120#else
121
122#  include <speex/speex_config_types.h>
123
124#endif
125
126#endif  /* _SPEEX_TYPES_H */
127