RTI Connext Micro C API Version 4.2.0
Loading...
Searching...
No Matches
osapi_semaphore.h File Reference

Semaphore interface definition. More...

#include "osapi/osapi_dll.h"
#include "osapi/osapi_types.h"

Macros

#define OSAPI_SEMAPHORE_TIMEOUT_INFINITE   -1
 If OSAPI_Semaphore_take is called with OSAPI_SEMAPHORE_TIMEOUT_INFINITE as timeout, OSAPI_Semaphore_take will not return until the semaphore is signaled.
 
#define OSAPI_SEMAPHORE_RESULT_OK   0
 If OSAPI_Semaphore_take succeeds and the semaphore is signaled within the timeout period, OSAPI_Semaphore_take returns TRUE and sets the failure reason to OSAPI_SEMAPHORE_RESULT_OK.
 
#define OSAPI_SEMAPHORE_RESULT_TIMEOUT   1
 If OSAPI_Semaphore_take was called with a timeout value different from OSAPI_SEMAPHORE_TIMEOUT_INFINITE, and the sempahore was not signaled before the timeout expired, waiting for the semaphore to unblock timed out, OSAPI_Semaphore_take TRUE and sets the failure reason to OSAPI_SEMAPHORE_RESULT_TIMEOUT.
 
#define OSAPI_SEMAPHORE_RESULT_ERROR   2
 If OSAPI_Semaphore_take fails for an unknown reason, OSAPI_Semaphore_take returns FALSE and sets the failure reason to OSAPI_SEMAPHORE_RESULT_ERROR.
 

Typedefs

typedef struct OSAPI_Semaphore OSAPI_Semaphore_T
 Abstract Semaphore type.
 

Functions

OSPSLDllExport OSAPI_Semaphore_TOSAPI_Semaphore_new (void)
 Create a Semaphore.
 
OSPSLDllExport RTI_BOOL OSAPI_Semaphore_delete (OSAPI_Semaphore_T *self)
 Delete a semaphore.
 
OSPSLDllExport RTI_BOOL OSAPI_Semaphore_take (OSAPI_Semaphore_T *self, RTI_INT32 timeout_ms, RTI_INT32 *fail_reason)
 Take a Semaphore.
 
OSPSLDllExport RTI_BOOL OSAPI_Semaphore_give (OSAPI_Semaphore_T *self)
 Give a Semaphore.
 

Detailed Description

Semaphore interface definition.