mirror of https://github.com/tailix/libkernaux.git
27 lines
557 B
C
27 lines
557 B
C
#ifndef KERNAUX_INCLUDED_MUTEX
|
|
#define KERNAUX_INCLUDED_MUTEX
|
|
|
|
#ifdef __cplusplus
|
|
extern "C" {
|
|
#endif
|
|
|
|
#define KERNAUX_MUTEX_EXTRA_DATA_SIZE (32)
|
|
|
|
typedef void (*KernAux_Mutex_Lock )(void *extra_data);
|
|
typedef void (*KernAux_Mutex_Unlock)(void *extra_data);
|
|
|
|
typedef struct KernAux_Mutex {
|
|
KernAux_Mutex_Lock lock;
|
|
KernAux_Mutex_Unlock unlock;
|
|
char extra_data[KERNAUX_MUTEX_EXTRA_DATA_SIZE];
|
|
} *KernAux_Mutex;
|
|
|
|
void KernAux_Mutex_lock (KernAux_Mutex mutex);
|
|
void KernAux_Mutex_unlock(KernAux_Mutex mutex);
|
|
|
|
#ifdef __cplusplus
|
|
}
|
|
#endif
|
|
|
|
#endif
|