www.pudn.com > Tremor.rar > os_types.h


/******************************************************************** 
 *                                                                  * 
 * THIS FILE IS PART OF THE OggVorbis 'TREMOR' CODEC SOURCE CODE.   * 
 *                                                                  * 
 * USE, DISTRIBUTION AND REPRODUCTION OF THIS LIBRARY SOURCE IS     * 
 * GOVERNED BY A BSD-STYLE SOURCE LICENSE INCLUDED WITH THIS SOURCE * 
 * IN 'COPYING'. PLEASE READ THESE TERMS BEFORE DISTRIBUTING.       * 
 *                                                                  * 
 * THE OggVorbis 'TREMOR' SOURCE CODE IS (C) COPYRIGHT 1994-2002    * 
 * BY THE Xiph.Org FOUNDATION http://www.xiph.org/                  * 
 *                                                                  * 
 ******************************************************************** 
 
 function: #ifdef jail to whip a few platforms into the UNIX ideal. 
 
 ********************************************************************/ 
#ifndef _OS_TYPES_H 
#define _OS_TYPES_H 
 
#ifdef _LOW_ACCURACY_ 
#  define X(n) (((((n)>>22)+1)>>1) - ((((n)>>22)+1)>>9)) 
#  define LOOKUP_T const unsigned char 
#else 
#  define X(n) (n) 
#  define LOOKUP_T const ogg_int32_t 
#endif 
 
/* make it easy on the folks that want to compile the libs with a 
   different malloc than stdlib */ 
#define _ogg_malloc  malloc 
#define _ogg_calloc  calloc 
#define _ogg_realloc realloc 
#define _ogg_free    free 
 
#ifdef _WIN32  
 
#  ifndef __GNUC__ 
   /* MSVC/Borland */ 
   typedef __int64 ogg_int64_t; 
   typedef __int32 ogg_int32_t; 
   typedef unsigned __int32 ogg_uint32_t; 
   typedef __int16 ogg_int16_t; 
#  else 
   /* Cygwin */ 
   #include <_G_config.h> 
   typedef _G_int64_t ogg_int64_t; 
   typedef _G_int32_t ogg_int32_t; 
   typedef _G_uint32_t ogg_uint32_t; 
   typedef _G_int16_t ogg_int16_t; 
#  endif 
 
#elif defined(__MACOS__) 
 
#  include  
   typedef SInt16 ogg_int16_t; 
   typedef SInt32 ogg_int32_t; 
   typedef UInt32 ogg_uint32_t; 
   typedef SInt64 ogg_int64_t; 
 
#elif defined(__MACOSX__) /* MacOS X Framework build */ 
 
#  include  
   typedef int16_t ogg_int16_t; 
   typedef int32_t ogg_int32_t; 
   typedef u_int32_t ogg_uint32_t; 
   typedef int64_t ogg_int64_t; 
 
#elif defined(__BEOS__) 
 
   /* Be */ 
#  include  
 
#elif defined (__EMX__) 
 
   /* OS/2 GCC */ 
   typedef short ogg_int16_t; 
   typedef int ogg_int32_t; 
   typedef unsigned int ogg_uint32_t; 
   typedef long long ogg_int64_t; 
 
#else 
 
#  include  
#  include "config_types.h" 
 
#endif 
 
#endif  /* _OS_TYPES_H */