30#if !defined(_ERGO_BARRIER_H_)
31#define _ERGO_BARRIER_H_
36#if !defined(HAS_PTHREAD_BARRIER)
39#define EXTERN_C extern "C"
41#define EXTERN_C extern
44#if !defined(PTHREAD_BARRIER_SERIAL_THREAD)
45#define PTHREAD_BARRIER_SERIAL_THREAD -1
57 const void * attr_ignored,
64#define ergo_barrier_t pthread_barrier_t
65#define ergo_barrier_init pthread_barrier_init
66#define ergo_barrier_destroy pthread_barrier_destroy
67#define ergo_barrier_wait pthread_barrier_wait
EXTERN_C int ergo_barrier_wait(ergo_barrier_t *__barrier)
Definition: barrier.c:68
EXTERN_C int ergo_barrier_init(ergo_barrier_t *barrier, const void *attr_ignored, unsigned int count)
Definition: barrier.c:44
EXTERN_C int ergo_barrier_destroy(ergo_barrier_t *__barrier)
Definition: barrier.c:58
#define EXTERN_C
Definition: barrier.h:41
struct ergo_barrier ergo_barrier_t
int initCount
Definition: barrier.h:51
int cycle
Definition: barrier.h:53
pthread_mutex_t barrierMutex
Definition: barrier.h:49
int currCount
Definition: barrier.h:52
pthread_cond_t conditionVar
Definition: barrier.h:50