Line data Source code
1 0 : /*
2 : * Copyright (c) 2018 Intel Corporation
3 : *
4 : * SPDX-License-Identifier: Apache-2.0
5 : */
6 : #ifndef ZEPHYR_INCLUDE_POSIX_SEMAPHORE_H_
7 : #define ZEPHYR_INCLUDE_POSIX_SEMAPHORE_H_
8 :
9 : #include <zephyr/posix/time.h>
10 : #include <zephyr/posix/posix_types.h>
11 :
12 : #ifdef __cplusplus
13 : extern "C" {
14 : #endif
15 :
16 0 : #define SEM_FAILED ((sem_t *) 0)
17 :
18 0 : int sem_destroy(sem_t *semaphore);
19 0 : int sem_getvalue(sem_t *ZRESTRICT semaphore, int *ZRESTRICT value);
20 0 : int sem_init(sem_t *semaphore, int pshared, unsigned int value);
21 0 : int sem_post(sem_t *semaphore);
22 0 : int sem_timedwait(sem_t *ZRESTRICT semaphore, struct timespec *ZRESTRICT abstime);
23 0 : int sem_trywait(sem_t *semaphore);
24 0 : int sem_wait(sem_t *semaphore);
25 0 : sem_t *sem_open(const char *name, int oflags, ...);
26 0 : int sem_unlink(const char *name);
27 0 : int sem_close(sem_t *sem);
28 :
29 : #ifdef __cplusplus
30 : }
31 : #endif
32 :
33 : #endif /* ZEPHYR_INCLUDE_POSIX_SEMAPHORE_H_ */
|