#include <vxWorks.h>
#include <semLib.h>
#include <taskLib.h>
Go to the source code of this file.
Defines | |
#define | OMNI_MUTEX_IMPLEMENTATION |
#define | OMNI_CONDITION_IMPLEMENTATION |
#define | OMNI_SEMAPHORE_IMPLEMENTATION SEM_ID semID; |
#define | OMNI_MUTEX_LOCK_IMPLEMENTATION |
#define | OMNI_MUTEX_UNLOCK_IMPLEMENTATION |
#define | OMNI_THREAD_IMPLEMENTATION |
#define | main(discarded_argc, discarded_argv) |
Functions | |
void | omni_thread_wrapper (void *ptr) |
#define main | ( | discarded_argc, | |||
discarded_argv | ) |
Value:
omni_discard_retval() \ { \ throw; \ } \ int omni_main( int argc, char **argv ); \ void launch( ) \ { \ omni_thread* th = new omni_thread( (void(*)(void*))omni_main );\ th->start();\ }\ int omni_main( int argc, char **argv )
#define OMNI_CONDITION_IMPLEMENTATION |
Value:
long waiters_; \
SEM_ID waiters_lock_; \
SEM_ID sema_;
#define OMNI_MUTEX_IMPLEMENTATION |
Value:
SEM_ID mutexID; \
bool m_bConstructed;
#define OMNI_MUTEX_LOCK_IMPLEMENTATION |
Value:
if(semTake(mutexID, WAIT_FOREVER) != OK) \ { \ throw omni_thread_fatal(errno); \ }
#define OMNI_MUTEX_UNLOCK_IMPLEMENTATION |
Value:
if(semGive(mutexID) != OK) \ { \ throw omni_thread_fatal(errno); \ }
#define OMNI_SEMAPHORE_IMPLEMENTATION SEM_ID semID; |
#define OMNI_THREAD_IMPLEMENTATION |
Value:
friend void omni_thread_wrapper(void* ptr); \ static int vxworks_priority(priority_t); \ omni_condition *running_cond; \ void* return_val; \ int tid; \ public: \ static void attach(void); \ static void detach(void); \ static void show(void);
void omni_thread_wrapper | ( | void * | ptr | ) |