haiku/headers/private/kernel/posix/realtime_sem.h
Ingo Weinhold 98e6713172 * Moved realtime_sem.{cpp,h} into new posix subdirectory.
* Renamed the old kernel_posix[_arch...].o to kernel_lib_posix...


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25336 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-05-06 23:16:04 +00:00

39 lines
1011 B
C

/*
* Copyright 2008, Ingo Weinhold, ingo_weinhold@gmx.de.
* Distributed under the terms of the MIT License.
*/
#ifndef KERNEL_REALTIME_SEM_H
#define KERNEL_REALTIME_SEM_H
#include <semaphore.h>
#include <sys/cdefs.h>
#include <sys/types.h>
#include <OS.h>
struct realtime_sem_context;
__BEGIN_DECLS
void realtime_sem_init();
void delete_realtime_sem_context(struct realtime_sem_context* context);
struct realtime_sem_context* clone_realtime_sem_context(
struct realtime_sem_context* context);
status_t _user_realtime_sem_open(const char* name, int openFlags,
mode_t mode, uint32 semCount, sem_t* userSem,
sem_t** _usedUserSem);
status_t _user_realtime_sem_close(sem_id semID, sem_t** _deleteUserSem);
status_t _user_realtime_sem_unlink(const char* name);
status_t _user_realtime_sem_get_value(sem_id semID, int* value);
status_t _user_realtime_sem_post(sem_id semID);
status_t _user_realtime_sem_wait(sem_id semID, bigtime_t timeout);
__END_DECLS
#endif // KERNEL_REALTIME_SEM_H