00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022 #ifndef AVFORMAT_OS_SUPPORT_H
00023 #define AVFORMAT_OS_SUPPORT_H
00024
00030 #include "config.h"
00031
00032 #if defined(__MINGW32__) && !defined(__MINGW32CE__)
00033 # include <fcntl.h>
00034 # ifdef lseek
00035 # undef lseek
00036 # endif
00037 # define lseek(f,p,w) _lseeki64((f), (p), (w))
00038 # define stat _stati64
00039 # define fstat(f,s) _fstati64((f), (s))
00040 #endif
00041
00042 static inline int is_dos_path(const char *path)
00043 {
00044 #if HAVE_DOS_PATHS
00045 if (path[0] && path[1] == ':')
00046 return 1;
00047 #endif
00048 return 0;
00049 }
00050
00051 #if defined(__OS2__)
00052 #define SHUT_RD 0
00053 #define SHUT_WR 1
00054 #define SHUT_RDWR 2
00055 #endif
00056
00057 #if defined(_WIN32)
00058 #define SHUT_RD SD_RECEIVE
00059 #define SHUT_WR SD_SEND
00060 #define SHUT_RDWR SD_BOTH
00061 #endif
00062
00063 #if defined(_WIN32) && !defined(__MINGW32CE__)
00064 int ff_win32_open(const char *filename, int oflag, int pmode);
00065 #define open ff_win32_open
00066 #endif
00067
00068 #if CONFIG_NETWORK
00069 #if !HAVE_SOCKLEN_T
00070 typedef int socklen_t;
00071 #endif
00072
00073
00074 #if !HAVE_CLOSESOCKET
00075 #define closesocket close
00076 #endif
00077
00078 #if !HAVE_POLL_H
00079 typedef unsigned long nfds_t;
00080
00081 struct pollfd {
00082 int fd;
00083 short events;
00084 short revents;
00085 };
00086
00087
00088 #define POLLIN 0x0001
00089 #define POLLOUT 0x0002
00090 #define POLLRDNORM POLLIN
00091 #define POLLWRNORM POLLOUT
00092 #define POLLRDBAND 0x0008
00093 #define POLLWRBAND 0x0010
00094 #define POLLPRI 0x0020
00095
00096
00097 #define POLLERR 0x0004
00098 #define POLLHUP 0x0080
00099 #define POLLNVAL 0x1000
00100
00101
00102 int poll(struct pollfd *fds, nfds_t numfds, int timeout);
00103 #endif
00104 #endif
00105
00106 #endif