misc/libtremor/tremor/os_types.h
changeset 9431 0f5961910e27
parent 9357 a501f5ec7b34
parent 9429 7a97a554ac80
child 9433 f0a8ac191839
equal deleted inserted replaced
9357:a501f5ec7b34 9431:0f5961910e27
     1 /********************************************************************
       
     2  *                                                                  *
       
     3  * THIS FILE IS PART OF THE OggVorbis 'TREMOR' CODEC SOURCE CODE.   *
       
     4  *                                                                  *
       
     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 'TREMOR' 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 
       
    16  ********************************************************************/
       
    17 #ifndef _OS_TYPES_H
       
    18 #define _OS_TYPES_H
       
    19 
       
    20 #ifdef _LOW_ACCURACY_
       
    21 #  define X(n) (((((n)>>22)+1)>>1) - ((((n)>>22)+1)>>9))
       
    22 #  define LOOKUP_T const unsigned char
       
    23 #else
       
    24 #  define X(n) (n)
       
    25 #  define LOOKUP_T const ogg_int32_t
       
    26 #endif
       
    27 
       
    28 /* make it easy on the folks that want to compile the libs with a
       
    29    different malloc than stdlib */
       
    30 #define _ogg_malloc  malloc
       
    31 #define _ogg_calloc  calloc
       
    32 #define _ogg_realloc realloc
       
    33 #define _ogg_free    free
       
    34 
       
    35 #ifdef _WIN32 
       
    36 
       
    37 #  ifndef __GNUC__
       
    38    /* MSVC/Borland */
       
    39    typedef __int64 ogg_int64_t;
       
    40    typedef __int32 ogg_int32_t;
       
    41    typedef unsigned __int32 ogg_uint32_t;
       
    42    typedef __int16 ogg_int16_t;
       
    43 #  else
       
    44    /* Cygwin */
       
    45    #include <_G_config.h>
       
    46    typedef _G_int64_t ogg_int64_t;
       
    47    typedef _G_int32_t ogg_int32_t;
       
    48    typedef _G_uint32_t ogg_uint32_t;
       
    49    typedef _G_int16_t ogg_int16_t;
       
    50 #  endif
       
    51 
       
    52 #elif defined(__MACOS__)
       
    53 
       
    54 #  include <sys/types.h>
       
    55    typedef SInt16 ogg_int16_t;
       
    56    typedef SInt32 ogg_int32_t;
       
    57    typedef UInt32 ogg_uint32_t;
       
    58    typedef SInt64 ogg_int64_t;
       
    59 
       
    60 #elif (defined(__APPLE__) && defined(__MACH__)) /* MacOS X Framework build */
       
    61 
       
    62 #  include <sys/types.h>
       
    63    typedef int16_t ogg_int16_t;
       
    64    typedef int32_t ogg_int32_t;
       
    65    typedef u_int32_t ogg_uint32_t;
       
    66    typedef int64_t ogg_int64_t;
       
    67 
       
    68 #elif defined(__BEOS__)
       
    69 
       
    70    /* Be */
       
    71 #  include <inttypes.h>
       
    72 
       
    73 #elif defined (__EMX__)
       
    74 
       
    75    /* OS/2 GCC */
       
    76    typedef short ogg_int16_t;
       
    77    typedef int ogg_int32_t;
       
    78    typedef unsigned int ogg_uint32_t;
       
    79    typedef long long ogg_int64_t;
       
    80 
       
    81 #else
       
    82 
       
    83 #  include <sys/types.h>
       
    84 #  include "config_types.h"
       
    85 
       
    86 #endif
       
    87 
       
    88 #endif  /* _OS_TYPES_H */