|
RTI Connext Micro C API Version 4.2.0
|
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_T * | OSAPI_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. | |
Semaphore interface definition.