00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020 #ifndef __OSIP_CONDV_H__
00021 #define __OSIP_CONDV_H__
00022
00023 #include <stdio.h>
00024
00025 #ifdef OSIP_MT
00026
00027 #ifdef ENABLE_MPATROL
00028 #include <mpatrol.h>
00029 #endif
00030
00045 #ifdef __cplusplus
00046 extern "C"
00047 {
00048 #endif
00049
00050 #if defined(__PSOS__)
00051
00052
00053
00054 #else
00055
00056
00057
00058 #if defined(WIN32) || defined(_WIN32_WCE)
00059
00060 #ifndef HAVE_STRUCT_TIMESPEC
00061 #define HAVE_STRUCT_TIMESPEC 1
00062
00066 struct timespec
00067 {
00068 long tv_sec;
00069 long tv_nsec;
00070 };
00071 #endif
00072 #endif
00073
00074 struct osip_cond;
00075
00079 struct osip_cond *osip_cond_init (void);
00084 int osip_cond_destroy (struct osip_cond *cond);
00089 int osip_cond_signal (struct osip_cond *cond);
00090
00096 int osip_cond_wait (struct osip_cond *cond, struct osip_mutex *mut);
00103 int osip_cond_timedwait (struct osip_cond *cond, struct osip_mutex *mut,
00104 const struct timespec *abstime);
00105
00106
00107 #ifdef __cplusplus
00108 }
00109 #endif
00110
00111 #endif
00112
00115 #endif
00116
00117 #endif