1 /* 2 mpg123_msvc: MPEG Audio Decoder library wrapper header for MS VC++ 2005 3 4 copyright 2008 by the mpg123 project - free software under the terms of the LGPL 2.1 5 initially written by Patrick Dehne and Thomas Orgis. 6 */ 7 #ifndef MPG123_MSVC_H 8 #define MPG123_MSVC_H 9 10 #include <tchar.h> 11 #include <stdlib.h> 12 #include <sys/types.h> 13 14 // Needed for Visual Studio versions before VS 2010. 15 #if (_MSC_VER < 1600) 16 typedef __int32 int32_t; 17 typedef unsigned __int32 uint32_t; 18 #define PRIiMAX "I64i" 19 typedef __int64 intmax_t; 20 #else 21 #include <stdint.h> 22 #include <inttypes.h> 23 #endif 24 25 // ftell returns long, _ftelli64 returns __int64 26 // off_t is long, not __int64, use ftell 27 #define ftello ftell 28 29 #define MPG123_NO_CONFIGURE 30 #include "mpg123.h.in" /* Yes, .h.in; we include the configure template! */ 31 32 #ifdef __cplusplus 33 extern "C" { 34 #endif 35 36 // Wrapper around mpg123_open that supports path names with unicode 37 // characters 38 MPG123_EXPORT int mpg123_topen(mpg123_handle *fr, const _TCHAR *path); 39 MPG123_EXPORT int mpg123_tclose(mpg123_handle *fr); 40 41 #ifdef __cplusplus 42 } 43 #endif 44 45 #endif 46