Home | History | Annotate | Download | only in os
      1 /*
      2  * libusb synchronization using POSIX Threads
      3  *
      4  * Copyright (C) 2010 Peter Stuge <peter (at) stuge.se>
      5  *
      6  * This library is free software; you can redistribute it and/or
      7  * modify it under the terms of the GNU Lesser General Public
      8  * License as published by the Free Software Foundation; either
      9  * version 2.1 of the License, or (at your option) any later version.
     10  *
     11  * This library is distributed in the hope that it will be useful,
     12  * but WITHOUT ANY WARRANTY; without even the implied warranty of
     13  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
     14  * Lesser General Public License for more details.
     15  *
     16  * You should have received a copy of the GNU Lesser General Public
     17  * License along with this library; if not, write to the Free Software
     18  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
     19  */
     20 
     21 #ifndef LIBUSB_THREADS_POSIX_H
     22 #define LIBUSB_THREADS_POSIX_H
     23 
     24 #include <pthread.h>
     25 
     26 #define usbi_mutex_static_t		pthread_mutex_t
     27 #define USBI_MUTEX_INITIALIZER		PTHREAD_MUTEX_INITIALIZER
     28 #define usbi_mutex_static_lock		pthread_mutex_lock
     29 #define usbi_mutex_static_unlock	pthread_mutex_unlock
     30 
     31 #define usbi_mutex_t			pthread_mutex_t
     32 #define usbi_mutex_init			pthread_mutex_init
     33 #define usbi_mutex_lock			pthread_mutex_lock
     34 #define usbi_mutex_unlock		pthread_mutex_unlock
     35 #define usbi_mutex_trylock		pthread_mutex_trylock
     36 #define usbi_mutex_destroy		pthread_mutex_destroy
     37 
     38 #define usbi_cond_t			pthread_cond_t
     39 #define usbi_cond_init			pthread_cond_init
     40 #define usbi_cond_wait			pthread_cond_wait
     41 #define usbi_cond_timedwait		pthread_cond_timedwait
     42 #define usbi_cond_broadcast		pthread_cond_broadcast
     43 #define usbi_cond_destroy		pthread_cond_destroy
     44 #define usbi_cond_signal		pthread_cond_signal
     45 
     46 extern int usbi_mutex_init_recursive(pthread_mutex_t *mutex, pthread_mutexattr_t *attr);
     47 
     48 #endif /* LIBUSB_THREADS_POSIX_H */
     49