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