Main Page | Modules | Class List | Directories | File List | Class Members | File Members | Related Pages
include / osip2

osip_mt.h

Go to the documentation of this file.
00001 /*
00002  The oSIP library implements the Session Initiation Protocol (SIP -rfc3261-)
00003  Copyright (C) 2001,2002,2003,2004 Aymeric MOIZARD jack@atosc.org
00004 
00005  This library is free software; you can redistribute it and/or
00006  modify it under the terms of the GNU Lesser General Public
00007  License as published by the Free Software Foundation; either
00008  version 2.1 of the License, or (at your option) any later version.
00009 
00010  This library is distributed in the hope that it will be useful,
00011  but WITHOUT ANY WARRANTY; without even the implied warranty of
00012  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
00013  Lesser General Public License for more details.
00014 
00015  You should have received a copy of the GNU Lesser General Public
00016  License along with this library; if not, write to the Free Software
00017  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
00018 */
00019 
00020 #ifndef _OSIP_MT_H_
00021 #define _OSIP_MT_H_
00022 
00023 #ifdef OSIP_MT
00024 
00025 #ifdef ENABLE_MPATROL
00026 #include <mpatrol.h>
00027 #endif
00028 
00029 #include <stdio.h>
00030 #include <errno.h>
00031 
00046 #ifdef __cplusplus
00047 extern "C"
00048 {
00049 #endif
00050 
00055 struct osip_thread;
00056 
00063 struct osip_thread *osip_thread_create (int stacksize,
00064 void *(*func) (void *), void *arg);
00065 
00070 int osip_thread_join (struct osip_thread *thread);
00071 
00077 int osip_thread_set_priority (struct osip_thread *thread, int priority);
00081 void osip_thread_exit (void);
00082 
00083 #ifdef __cplusplus
00084 }
00085 #endif
00086 
00095 #ifdef __cplusplus
00096 extern "C"
00097 {
00098 #endif
00099 
00104 struct osip_sem;
00105 
00110 struct osip_sem *osip_sem_init (unsigned int value);
00115 int osip_sem_destroy (struct osip_sem *sem);
00120 int osip_sem_post (struct osip_sem *sem);
00126 int osip_sem_wait (struct osip_sem *sem);
00132 int osip_sem_trywait (struct osip_sem *sem);
00133 
00134 
00135 #ifdef __cplusplus
00136 }
00137 #endif
00138 
00147 #ifdef __cplusplus
00148 extern "C"
00149 {
00150 #endif
00151 
00156 struct osip_mutex;
00157 
00161 struct osip_mutex *osip_mutex_init (void);
00166 void osip_mutex_destroy (struct osip_mutex *mut);
00171 int osip_mutex_lock (struct osip_mutex *mut);
00176 int osip_mutex_unlock (struct osip_mutex *mut);
00177 
00178 #ifdef __cplusplus
00179 }
00180 #endif
00181 
00184 #endif /* OSIP_MT */
00185 
00186 #endif /* end of _THREAD_H_ */

Generated on Tue Feb 22 00:59:47 2005 for libosip by doxygen 1.4.1

AltStyle によって変換されたページ (->オリジナル) /