Mercurial > libavformat.hg
annotate os_support.h @ 1860:255cd2d3c876 libavformat
all the time related fields seem to be 64bit so i guess preroll is too (this is just a cosmetic anyway ...)
| author | michael |
|---|---|
| date | Mon, 05 Mar 2007 01:28:20 +0000 |
| parents | 040097642b13 |
| children | d2d62fa7e7c9 |
| rev | line source |
|---|---|
|
1306
8bf9be9bb107
Add official LGPL license headers to the files that were missing them.
diego
parents:
448
diff
changeset
|
1 /* |
|
8bf9be9bb107
Add official LGPL license headers to the files that were missing them.
diego
parents:
448
diff
changeset
|
2 * various utilities for ffmpeg system |
|
8bf9be9bb107
Add official LGPL license headers to the files that were missing them.
diego
parents:
448
diff
changeset
|
3 * copyright (c) 2000, 2001, 2002 Fabrice Bellard |
|
8bf9be9bb107
Add official LGPL license headers to the files that were missing them.
diego
parents:
448
diff
changeset
|
4 * |
|
1358
0899bfe4105c
Change license headers to say 'FFmpeg' instead of 'this program/this library'
diego
parents:
1306
diff
changeset
|
5 * This file is part of FFmpeg. |
|
0899bfe4105c
Change license headers to say 'FFmpeg' instead of 'this program/this library'
diego
parents:
1306
diff
changeset
|
6 * |
|
0899bfe4105c
Change license headers to say 'FFmpeg' instead of 'this program/this library'
diego
parents:
1306
diff
changeset
|
7 * FFmpeg is free software; you can redistribute it and/or |
|
1306
8bf9be9bb107
Add official LGPL license headers to the files that were missing them.
diego
parents:
448
diff
changeset
|
8 * modify it under the terms of the GNU Lesser General Public |
|
8bf9be9bb107
Add official LGPL license headers to the files that were missing them.
diego
parents:
448
diff
changeset
|
9 * License as published by the Free Software Foundation; either |
|
1358
0899bfe4105c
Change license headers to say 'FFmpeg' instead of 'this program/this library'
diego
parents:
1306
diff
changeset
|
10 * version 2.1 of the License, or (at your option) any later version. |
|
1306
8bf9be9bb107
Add official LGPL license headers to the files that were missing them.
diego
parents:
448
diff
changeset
|
11 * |
|
1358
0899bfe4105c
Change license headers to say 'FFmpeg' instead of 'this program/this library'
diego
parents:
1306
diff
changeset
|
12 * FFmpeg is distributed in the hope that it will be useful, |
|
1306
8bf9be9bb107
Add official LGPL license headers to the files that were missing them.
diego
parents:
448
diff
changeset
|
13 * but WITHOUT ANY WARRANTY; without even the implied warranty of |
|
8bf9be9bb107
Add official LGPL license headers to the files that were missing them.
diego
parents:
448
diff
changeset
|
14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU |
|
8bf9be9bb107
Add official LGPL license headers to the files that were missing them.
diego
parents:
448
diff
changeset
|
15 * Lesser General Public License for more details. |
|
8bf9be9bb107
Add official LGPL license headers to the files that were missing them.
diego
parents:
448
diff
changeset
|
16 * |
|
8bf9be9bb107
Add official LGPL license headers to the files that were missing them.
diego
parents:
448
diff
changeset
|
17 * You should have received a copy of the GNU Lesser General Public |
|
1358
0899bfe4105c
Change license headers to say 'FFmpeg' instead of 'this program/this library'
diego
parents:
1306
diff
changeset
|
18 * License along with FFmpeg; if not, write to the Free Software |
|
1306
8bf9be9bb107
Add official LGPL license headers to the files that were missing them.
diego
parents:
448
diff
changeset
|
19 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA |
|
8bf9be9bb107
Add official LGPL license headers to the files that were missing them.
diego
parents:
448
diff
changeset
|
20 */ |
|
8bf9be9bb107
Add official LGPL license headers to the files that were missing them.
diego
parents:
448
diff
changeset
|
21 |
|
230
9f4f4ca9f7b5
simpler strptime - added os_support.[ch] - moved localtime_r to os_support.c
bellard
parents:
diff
changeset
|
22 #ifndef _OS_SUPPORT_H |
|
9f4f4ca9f7b5
simpler strptime - added os_support.[ch] - moved localtime_r to os_support.c
bellard
parents:
diff
changeset
|
23 #define _OS_SUPPORT_H |
|
9f4f4ca9f7b5
simpler strptime - added os_support.[ch] - moved localtime_r to os_support.c
bellard
parents:
diff
changeset
|
24 |
|
9f4f4ca9f7b5
simpler strptime - added os_support.[ch] - moved localtime_r to os_support.c
bellard
parents:
diff
changeset
|
25 /** |
|
9f4f4ca9f7b5
simpler strptime - added os_support.[ch] - moved localtime_r to os_support.c
bellard
parents:
diff
changeset
|
26 * @file os_support.h |
|
9f4f4ca9f7b5
simpler strptime - added os_support.[ch] - moved localtime_r to os_support.c
bellard
parents:
diff
changeset
|
27 * miscellaneous OS support macros and functions. |
|
9f4f4ca9f7b5
simpler strptime - added os_support.[ch] - moved localtime_r to os_support.c
bellard
parents:
diff
changeset
|
28 * |
| 1670 | 29 * - socklen_t typedef (BeOS, Innotek libc) |
|
230
9f4f4ca9f7b5
simpler strptime - added os_support.[ch] - moved localtime_r to os_support.c
bellard
parents:
diff
changeset
|
30 * - usleep() (Win32, BeOS, OS/2) |
| 1598 | 31 * - lseek() (Win32) |
|
230
9f4f4ca9f7b5
simpler strptime - added os_support.[ch] - moved localtime_r to os_support.c
bellard
parents:
diff
changeset
|
32 * - floatf() (OS/2) |
|
9f4f4ca9f7b5
simpler strptime - added os_support.[ch] - moved localtime_r to os_support.c
bellard
parents:
diff
changeset
|
33 * - strcasecmp() (OS/2) |
| 1670 | 34 * - closesocket() |
|
1798
d1e61f4d02cd
MinGW patch by <koyama AT infocity DOT co DOT jp>, reworked. Removed placeholder for winsock.
mmu_man
parents:
1797
diff
changeset
|
35 * - poll() (BeOS, MinGW) |
|
230
9f4f4ca9f7b5
simpler strptime - added os_support.[ch] - moved localtime_r to os_support.c
bellard
parents:
diff
changeset
|
36 */ |
|
9f4f4ca9f7b5
simpler strptime - added os_support.[ch] - moved localtime_r to os_support.c
bellard
parents:
diff
changeset
|
37 |
| 1670 | 38 #if defined(__BEOS__) || defined(__INNOTEK_LIBC__) |
| 39 typedef int socklen_t; | |
| 40 #endif | |
| 41 | |
|
230
9f4f4ca9f7b5
simpler strptime - added os_support.[ch] - moved localtime_r to os_support.c
bellard
parents:
diff
changeset
|
42 #ifdef __MINGW32__ |
|
9f4f4ca9f7b5
simpler strptime - added os_support.[ch] - moved localtime_r to os_support.c
bellard
parents:
diff
changeset
|
43 __declspec(dllimport) void __stdcall Sleep(unsigned long dwMilliseconds); |
|
9f4f4ca9f7b5
simpler strptime - added os_support.[ch] - moved localtime_r to os_support.c
bellard
parents:
diff
changeset
|
44 // # include <windows.h> |
|
9f4f4ca9f7b5
simpler strptime - added os_support.[ch] - moved localtime_r to os_support.c
bellard
parents:
diff
changeset
|
45 # define usleep(t) Sleep((t) / 1000) |
| 1598 | 46 # include <fcntl.h> |
| 47 # define lseek(f,p,w) _lseeki64((f), (p), (w)) | |
|
1798
d1e61f4d02cd
MinGW patch by <koyama AT infocity DOT co DOT jp>, reworked. Removed placeholder for winsock.
mmu_man
parents:
1797
diff
changeset
|
48 # define HAVE_CLOSESOCKET 1 |
| 1670 | 49 #endif |
| 50 | |
|
230
9f4f4ca9f7b5
simpler strptime - added os_support.[ch] - moved localtime_r to os_support.c
bellard
parents:
diff
changeset
|
51 #ifdef __BEOS__ |
| 1670 | 52 # include <sys/socket.h> |
| 53 # include <netinet/in.h> | |
| 54 /* not net_server ? */ | |
| 55 # if IPPROTO_TCP != 6 | |
| 56 # define HAVE_CLOSESOCKET 1 | |
| 57 # endif | |
| 58 # include <BeBuild.h> | |
| 59 /* R5 didn't have usleep, fake it. Haiku and Zeta has it now. */ | |
| 60 # if B_BEOS_VERSION <= B_BEOS_VERSION_5 | |
|
230
9f4f4ca9f7b5
simpler strptime - added os_support.[ch] - moved localtime_r to os_support.c
bellard
parents:
diff
changeset
|
61 # include <OS.h> |
| 1670 | 62 /* doesn't set errno but that's enough */ |
|
230
9f4f4ca9f7b5
simpler strptime - added os_support.[ch] - moved localtime_r to os_support.c
bellard
parents:
diff
changeset
|
63 # define usleep(t) snooze((bigtime_t)(t)) |
|
9f4f4ca9f7b5
simpler strptime - added os_support.[ch] - moved localtime_r to os_support.c
bellard
parents:
diff
changeset
|
64 # endif |
|
1813
040097642b13
BeOS only: we don't have SA_RESTART. #define to 0 and emit a warning. I don't plan on hosting a streaming tv anyway but it gets ffserver building.
mmu_man
parents:
1799
diff
changeset
|
65 # ifndef SA_RESTART |
|
040097642b13
BeOS only: we don't have SA_RESTART. #define to 0 and emit a warning. I don't plan on hosting a streaming tv anyway but it gets ffserver building.
mmu_man
parents:
1799
diff
changeset
|
66 # warning SA_RESTART not implemented; ffserver might misbehave. |
|
040097642b13
BeOS only: we don't have SA_RESTART. #define to 0 and emit a warning. I don't plan on hosting a streaming tv anyway but it gets ffserver building.
mmu_man
parents:
1799
diff
changeset
|
67 # define SA_RESTART 0 |
|
040097642b13
BeOS only: we don't have SA_RESTART. #define to 0 and emit a warning. I don't plan on hosting a streaming tv anyway but it gets ffserver building.
mmu_man
parents:
1799
diff
changeset
|
68 # endif |
|
230
9f4f4ca9f7b5
simpler strptime - added os_support.[ch] - moved localtime_r to os_support.c
bellard
parents:
diff
changeset
|
69 #endif |
|
9f4f4ca9f7b5
simpler strptime - added os_support.[ch] - moved localtime_r to os_support.c
bellard
parents:
diff
changeset
|
70 |
|
9f4f4ca9f7b5
simpler strptime - added os_support.[ch] - moved localtime_r to os_support.c
bellard
parents:
diff
changeset
|
71 #if defined(CONFIG_OS2) |
|
9f4f4ca9f7b5
simpler strptime - added os_support.[ch] - moved localtime_r to os_support.c
bellard
parents:
diff
changeset
|
72 #include <stdlib.h> |
|
9f4f4ca9f7b5
simpler strptime - added os_support.[ch] - moved localtime_r to os_support.c
bellard
parents:
diff
changeset
|
73 static inline int usleep(unsigned int t) { return _sleep2(t / 1000); } |
|
9f4f4ca9f7b5
simpler strptime - added os_support.[ch] - moved localtime_r to os_support.c
bellard
parents:
diff
changeset
|
74 static inline int strcasecmp(const char* s1, const char* s2) { return stricmp(s1,s2); } |
|
9f4f4ca9f7b5
simpler strptime - added os_support.[ch] - moved localtime_r to os_support.c
bellard
parents:
diff
changeset
|
75 #endif |
|
9f4f4ca9f7b5
simpler strptime - added os_support.[ch] - moved localtime_r to os_support.c
bellard
parents:
diff
changeset
|
76 |
| 1670 | 77 /* most of the time closing a socket is just closing an fd */ |
| 78 #if HAVE_CLOSESOCKET != 1 | |
| 79 #define closesocket close | |
| 80 #endif | |
| 81 | |
|
1799
0dc3a767943d
Make sure we don't try to emulate poll() when it's there if --disable-ffserver... 10l
mmu_man
parents:
1798
diff
changeset
|
82 #ifdef CONFIG_FFSERVER |
| 1797 | 83 #ifndef HAVE_SYS_POLL_H |
| 84 typedef unsigned long nfds_t; | |
| 85 | |
| 86 struct pollfd { | |
| 87 int fd; | |
| 88 short events; /* events to look for */ | |
| 89 short revents; /* events that occured */ | |
| 90 }; | |
| 91 | |
| 92 /* events & revents */ | |
| 93 #define POLLIN 0x0001 /* any readable data available */ | |
| 94 #define POLLOUT 0x0002 /* file descriptor is writeable */ | |
| 95 #define POLLRDNORM POLLIN | |
| 96 #define POLLWRNORM POLLOUT | |
| 97 #define POLLRDBAND 0x0008 /* priority readable data */ | |
| 98 #define POLLWRBAND 0x0010 /* priority data can be written */ | |
| 99 #define POLLPRI 0x0020 /* high priority readable data */ | |
| 100 | |
| 101 /* revents only */ | |
| 102 #define POLLERR 0x0004 /* errors pending */ | |
| 103 #define POLLHUP 0x0080 /* disconnected */ | |
| 104 #define POLLNVAL 0x1000 /* invalid file descriptor */ | |
| 105 | |
| 106 | |
| 107 extern int poll(struct pollfd *fds, nfds_t numfds, int timeout); | |
| 108 #endif /* HAVE_SYS_POLL_H */ | |
|
1799
0dc3a767943d
Make sure we don't try to emulate poll() when it's there if --disable-ffserver... 10l
mmu_man
parents:
1798
diff
changeset
|
109 #endif /* CONFIG_FFSERVER */ |
| 1797 | 110 |
|
230
9f4f4ca9f7b5
simpler strptime - added os_support.[ch] - moved localtime_r to os_support.c
bellard
parents:
diff
changeset
|
111 #endif /* _OS_SUPPORT_H */ |
