CoreFlow 1.0.0
A modern orchestration and execution runtime
|
OS Abstraction Layer Utility Class. More...
#include <vx_osal.h>
Public Member Functions | |
vx_queue_t * | createQueue (vx_uint32 numItems, vx_size itemSize) |
Creates a queue object of specific size. | |
Static Public Member Functions | |
static vx_bool | createSem (vx_sem_t *sem, vx_uint32 count) |
Creates a semaphore object and sets to a given count. | |
static void | destroySem (vx_sem_t *sem) |
Releases a semaphore object. | |
static vx_bool | semPost (vx_sem_t *sem) |
Posts a semaphore object. | |
static vx_bool | semWait (vx_sem_t *sem) |
Waits on a semaphore object. | |
static vx_bool | semTryWait (vx_sem_t *sem) |
Tries to wait on a semaphore object. | |
static vx_bool | joinThread (vx_thread_t thread, vx_value_t *value) |
Joins a thread. | |
static vx_thread_t | createThread (vx_thread_f func, void *arg) |
Creates a thread. | |
static void | sleepThread (vx_uint32 milliseconds) |
Sleeps the current thread for a given number of milliseconds. | |
static vx_bool | initEvent (vx_internal_event_t *e, vx_bool autoreset) |
Initializes an event. | |
static vx_bool | waitEvent (vx_internal_event_t *e, vx_uint32 timeout) |
Waits on an event. | |
static vx_bool | setEvent (vx_internal_event_t *e) |
Sets an event. | |
static vx_bool | resetEvent (vx_internal_event_t *e) |
Resets an event. | |
static vx_bool | waitEventInternal (vx_internal_event_t *e, vx_uint32 ms) |
Wait on an internal event. | |
static vx_bool | deinitEvent (vx_internal_event_t *e) |
Deinitializes an event. | |
static vx_threadpool_t * | createThreadpool (vx_uint32 numThreads, vx_uint32 numWorkItems, vx_size sizeWorkItem, vx_threadpool_f worker, void *arg) |
Create and allocate thread pool. | |
static vx_bool | issueThreadpool (vx_threadpool_t *pool, vx_value_set_t workitems[], uint32_t numWorkItems) |
Start and issue tasks to thread pool. | |
static vx_bool | completeThreadpool (vx_threadpool_t *pool, vx_bool blocking) |
Complete and join thread pool. | |
static vx_value_t | workerThreadpool (void *arg) |
Launch worker thread pool. | |
static void | destroyThreadpool (vx_threadpool_t **ppool) |
Destroy thread pool. | |
static void | startCapture (vx_perf_t *perf) |
Starts the performance capture. | |
static void | stopCapture (vx_perf_t *perf) |
Stops the performance capture. | |
static vx_float32 | timeToMS (vx_uint64 c) |
Converts a vx_uint64 to a float in milliseconds. | |
static void | initPerf (vx_perf_t *perf) |
Initializes the performance information. | |
static void | printPerf (vx_perf_t *perf) |
Prints the performance information. | |
static void | initQueue (vx_queue_t *q) |
Initializes the queue. | |
static vx_queue_t * | createQueue () |
Creates a queue object. | |
static vx_bool | readQueue (vx_queue_t *q, vx_value_set_t **data) |
Reads from a queue object. | |
static vx_bool | writeQueue (vx_queue_t *q, vx_value_set_t *data) |
Writes to a queue object. | |
static void | popQueue (vx_queue_t *q) |
Pops a queue object. | |
static void | destroyQueue (vx_queue_t **pq) |
Destroys a queue object. | |
static void | deinitQueue (vx_queue_t *q) |
Deinitializes a queue object. | |
static void | printQueue (vx_queue_t *q) |
Print the queue object. | |
static vx_module_handle_t | loadModule (vx_char *name) |
Loads a module. | |
static void | unloadModule (vx_module_handle_t mod) |
Unloads a module. | |
static vx_symbol_t | getSymbol (vx_module_handle_t mod, const vx_char *name) |
Gets a symbol from a module. | |
OS Abstraction Layer Utility Class.