| 
    Mark3 Realtime Kernel
    
   | 
 
Header providing C-language API bindings for the Mark3 kernel. More...
Go to the source code of this file.
Macros | |
| #define | THREAD_SIZE (sizeof(Fake_Thread)) | 
| #define | TIMER_SIZE (sizeof(Fake_Timer)) | 
| #define | SEMAPHORE_SIZE (sizeof(Fake_Semaphore)) | 
| #define | MUTEX_SIZE (sizeof(Fake_Mutex)) | 
| #define | MESSAGE_SIZE (sizeof(Fake_Message)) | 
| #define | MESSAGEQUEUE_SIZE (sizeof(Fake_MessageQueue)) | 
| #define | MAILBOX_SIZE (sizeof(Fake_Mailbox)) | 
| #define | NOTIFY_SIZE (sizeof(Fake_Notify)) | 
| #define | MESSAGEPOOL_SIZE (sizeof(Fake_MessagePool)) | 
| #define | CONDITIONVARIABLE_SIZE (sizeof(Fake_ConditionVariable)) | 
| #define | READERWRITERLOCK_SIZE (sizeof(Fake_ReaderWriterLock)) | 
| #define | COROUTINE_SIZE (sizeof(Fake_Coroutine)) | 
| #define | TOKEN_1(x, y) x##y | 
| #define | TOKEN_2(x, y) TOKEN_1(x, y) | 
| #define | WORD_ROUND(x) (((x) + (sizeof(K_WORD) - 1)) / sizeof(K_WORD)) | 
| #define | DECLARE_THREAD(name) | 
| #define | DECLARE_TIMER(name) | 
| #define | DECLARE_SEMAPHORE(name) | 
| #define | DECLARE_MUTEX(name) | 
| #define | DECLARE_MESSAGE(name) | 
| #define | DECLARE_MESSAGEPOOL(name) | 
| #define | DECLARE_MESSAGEQUEUE(name) | 
| #define | DECLARE_MAILBOX(name) | 
| #define | DECLARE_NOTIFY(name) | 
| #define | DECLARE_CONDITIONVARIABLE(name) | 
| #define | DECLARE_READERWRITERLOCK(name) | 
| #define | DECLARE_COROUTINE(name) | 
Typedefs | |
| typedef void * | Mailbox_t | 
| Mailbox opaque handle data type.  More... | |
| typedef void * | Message_t | 
| Message opaque handle data type.  More... | |
| typedef void * | MessagePool_t | 
| MessagePool opaque handle data type.  More... | |
| typedef void * | MessageQueue_t | 
| MessageQueue opaque handle data type.  More... | |
| typedef void * | Mutex_t | 
| Mutex opaque handle data type.  More... | |
| typedef void * | Notify_t | 
| Notification object opaque handle data type.  More... | |
| typedef void * | Semaphore_t | 
| Semaphore opaque handle data type.  More... | |
| typedef void * | Thread_t | 
| Thread opaque handle data type.  More... | |
| typedef void * | Timer_t | 
| Timer opaque handle data type.  More... | |
| typedef void * | ConditionVariable_t | 
| Condition Variable opaque handle data type.  More... | |
| typedef void * | ReaderWriterLock_t | 
| Reader-writer-lock opaque handle data type.  More... | |
| typedef void * | Coroutine_t | 
| Coroutine opaaque handle data type.  More... | |
| typedef void(* | kernel_debug_print_t) (const char *szString_) | 
| typedef void(* | coroutine_callback_t) (Coroutine_t caller, void *pvContext) | 
| typedef void(* | panic_func_t) (uint16_t u16PanicCode_) | 
| typedef void(* | thread_entry_func_t) (void *pvArg_) | 
| typedef void(* | timer_callback_t) (Thread_t hOwner_, void *pvData_) | 
Enumerations | |
| enum | thread_state_t {  THREAD_STATE_EXIT = 0, THREAD_STATE_READY, THREAD_STATE_BLOCKED, THREAD_STATE_STOP, THREAD_STATE_INVALID }  | 
Functions | |
| void * | Alloc_Memory (size_t eSize_) | 
| Alloc_Memory.  More... | |
| void | Free_Memory (void *pvObject_) | 
| Free_Memory.  More... | |
| Semaphore_t | Alloc_Semaphore (void) | 
| Alloc_Semaphore.  More... | |
| void | Free_Semaphore (Semaphore_t handle) | 
| Mutex_t | Alloc_Mutex (void) | 
| Alloc_Mutex.  More... | |
| void | Free_Mutex (Mutex_t handle) | 
| Message_t | Alloc_Message (void) | 
| Alloc_Message.  More... | |
| void | Free_Message (Message_t handle) | 
| MessageQueue_t | Alloc_MessageQueue (void) | 
| Alloc_MessageQueue.  More... | |
| void | Free_MessageQueue (MessageQueue_t handle) | 
| MessagePool_t | Alloc_MessagePool (void) | 
| void | Free_MessagePool (MessagePool_t handle) | 
| Notify_t | Alloc_Notify (void) | 
| Alloc_Notify.  More... | |
| void | Free_Notify (Notify_t handle) | 
| Mailbox_t | Alloc_Mailbox (void) | 
| Alloc_Mailbox.  More... | |
| void | Free_Mailbox (Mailbox_t handle) | 
| Thread_t | Alloc_Thread (void) | 
| Alloc_Thread.  More... | |
| void | Free_Thread (Thread_t handle) | 
| Timer_t | Alloc_Timer (void) | 
| Alloc_Timer.  More... | |
| void | Free_Timer (Timer_t handle) | 
| void | Kernel_Init (void) | 
| Kernel_Init.  More... | |
| void | Kernel_Start (void) | 
| Kernel_Start.  More... | |
| bool | Kernel_IsStarted (void) | 
| Kernel_IsStarted.  More... | |
| void | Kernel_SetPanic (panic_func_t pfPanic_) | 
| Kernel_SetPanic.  More... | |
| bool | Kernel_IsPanic (void) | 
| Kernel_IsPanic.  More... | |
| void | Kernel_Panic (uint16_t u16Cause_) | 
| Kernel_Panic.  More... | |
| uint32_t | Kernel_GetTicks (void) | 
| Kernel_GetTicks.  More... | |
| void | Scheduler_Enable (bool bEnable_) | 
| Scheduler_Enable.  More... | |
| bool | Scheduler_IsEnabled (void) | 
| Scheduler_IsEnabled.  More... | |
| Thread_t | Scheduler_GetCurrentThread (void) | 
| Scheduler_GetCurrentThread.  More... | |
| void | Thread_Init (Thread_t handle, K_WORD *pwStack_, uint16_t u16StackSize_, PORT_PRIO_TYPE uXPriority_, thread_entry_func_t pfEntryPoint_, void *pvArg_) | 
| Thread_Init.  More... | |
| void | Thread_Start (Thread_t handle) | 
| Thread_Start.  More... | |
| void | Thread_Stop (Thread_t handle) | 
| Thread_Stop.  More... | |
| PORT_PRIO_TYPE | Thread_GetPriority (Thread_t handle) | 
| Thread_GetPriority.  More... | |
| PORT_PRIO_TYPE | Thread_GetCurPriority (Thread_t handle) | 
| Thread_GetCurPriority.  More... | |
| void | Thread_SetPriority (Thread_t handle, PORT_PRIO_TYPE uXPriority_) | 
| Thread_SetPriority.  More... | |
| void | Thread_Exit (Thread_t handle) | 
| Thread_Exit.  More... | |
| void | Thread_Sleep (uint32_t u32TimeMs_) | 
| Thread_Sleep.  More... | |
| void | Thread_Yield (void) | 
| Thread_Yield.  More... | |
| void | Thread_CoopYield (void) | 
| Thread_CoopYield.  More... | |
| void | Thread_SetID (Thread_t handle, uint8_t u8ID_) | 
| Thread_SetID.  More... | |
| uint8_t | Thread_GetID (Thread_t handle) | 
| Thread_GetID.  More... | |
| thread_state_t | Thread_GetState (Thread_t handle) | 
| Thread_GetState.  More... | |
| void | Timer_Init (Timer_t handle) | 
| Timer_Init.  More... | |
| void | Timer_Start (Timer_t handle, bool bRepeat_, uint32_t u32IntervalMs_, timer_callback_t pfCallback_, void *pvData_) | 
| Timer_Start.  More... | |
| void | Timer_Restart (Timer_t handle) | 
| Timer_Restart.  More... | |
| void | Timer_Stop (Timer_t handle) | 
| Timer_Stop.  More... | |
| void | Semaphore_Init (Semaphore_t handle, uint16_t u16InitVal_, uint16_t u16MaxVal_) | 
| Semaphore_Init.  More... | |
| void | Semaphore_Post (Semaphore_t handle) | 
| Semaphore_Post.  More... | |
| void | Semaphore_Pend (Semaphore_t handle) | 
| Semaphore_Pend.  More... | |
| bool | Semaphore_TimedPend (Semaphore_t handle, uint32_t u32WaitTimeMS_) | 
| Semaphore_TimedPend.  More... | |
| void | Mutex_Init (Mutex_t handle) | 
| Mutex_Init.  More... | |
| void | Mutex_Claim (Mutex_t handle) | 
| Mutex_Claim.  More... | |
| void | Mutex_Release (Mutex_t handle) | 
| Mutex_Release.  More... | |
| bool | Mutex_TimedClaim (Mutex_t handle, uint32_t u32WaitTimeMS_) | 
| Mutex_TimedClaim.  More... | |
| void | Notify_Init (Notify_t handle) | 
| Notify_Init.  More... | |
| void | Notify_Signal (Notify_t handle) | 
| Notify_Signal.  More... | |
| void | Notify_Wait (Notify_t handle, bool *pbFlag_) | 
| Notify_Wait.  More... | |
| bool | Notify_TimedWait (Notify_t handle, uint32_t u32WaitTimeMS_, bool *pbFlag_) | 
| Notify_TimedWait.  More... | |
| uint8_t | Atomic_Set8 (uint8_t *pu8Source_, uint8_t u8Val_) | 
| Atomic_Set8.  More... | |
| uint16_t | Atomic_Set16 (uint16_t *pu16Source_, uint16_t u16Val_) | 
| Atomic_Set16.  More... | |
| uint32_t | Atomic_Set32 (uint32_t *pu32Source_, uint32_t u32Val_) | 
| Atomic_Set32.  More... | |
| uint8_t | Atomic_Add8 (uint8_t *pu8Source_, uint8_t u8Val_) | 
| Atomic_Add8.  More... | |
| uint16_t | Atomic_Add16 (uint16_t *pu16Source_, uint16_t u16Val_) | 
| Atomic_Add16.  More... | |
| uint32_t | Atomic_Add32 (uint32_t *pu32Source_, uint32_t u32Val_) | 
| Atomic_Add32.  More... | |
| uint8_t | Atomic_Sub8 (uint8_t *pu8Source_, uint8_t u8Val_) | 
| Atomic_Sub8.  More... | |
| uint16_t | Atomic_Sub16 (uint16_t *pu16Source_, uint16_t u16Val_) | 
| Atomic_Sub16.  More... | |
| uint32_t | Atomic_Sub32 (uint32_t *pu32Source_, uint32_t u32Val_) | 
| Atomic_Sub32.  More... | |
| bool | Atomic_TestAndSet (bool *pbLock) | 
| Atomic_TestAndSet.  More... | |
| void | Message_Init (Message_t handle) | 
| Message_Init.  More... | |
| void | Message_SetData (Message_t handle, void *pvData_) | 
| Message_SetData.  More... | |
| void * | Message_GetData (Message_t handle) | 
| Message_GetData.  More... | |
| void | Message_SetCode (Message_t handle, uint16_t u16Code_) | 
| Message_SetCode.  More... | |
| uint16_t | Message_GetCode (Message_t handle) | 
| Message_GetCode.  More... | |
| void | MessageQueue_Init (MessageQueue_t handle) | 
| MessageQueue_Init.  More... | |
| Message_t | MessageQueue_Receive (MessageQueue_t handle) | 
| MessageQueue_Receive.  More... | |
| Message_t | MessageQueue_TimedReceive (MessageQueue_t handle, uint32_t u32TimeWaitMS_) | 
| MessageQueue_TimedReceive.  More... | |
| void | MessageQueue_Send (MessageQueue_t handle, Message_t hMessage_) | 
| MessageQueue_Send.  More... | |
| uint16_t | MessageQueue_GetCount (MessageQueue_t handle) | 
| MessageQueue_GetCount.  More... | |
| void | MessagePool_Init (MessagePool_t handle) | 
| MessagePool_Init.  More... | |
| void | MessagePool_Push (MessagePool_t handle, Message_t msg) | 
| MessagePool_Push.  More... | |
| Message_t | MessagePool_Pop (MessagePool_t handle) | 
| MessagePool_Pop.  More... | |
| void | Mailbox_Init (Mailbox_t handle, void *pvBuffer_, uint16_t u16BufferSize_, uint16_t u16ElementSize_) | 
| Mailbox_Init.  More... | |
| bool | Mailbox_Send (Mailbox_t handle, void *pvData_) | 
| Mailbox_Send.  More... | |
| bool | Mailbox_SendTail (Mailbox_t handle, void *pvData_) | 
| Mailbox_SendTail.  More... | |
| bool | Mailbox_TimedSend (Mailbox_t handle, void *pvData_, uint32_t u32TimeoutMS_) | 
| Mailbox_TimedSend.  More... | |
| bool | Mailbox_TimedSendTail (Mailbox_t handle, void *pvData_, uint32_t u32TimeoutMS_) | 
| Mailbox_TimedSendTail.  More... | |
| void | Mailbox_Receive (Mailbox_t handle, void *pvData_) | 
| Mailbox_Receive.  More... | |
| void | Mailbox_ReceiveTail (Mailbox_t handle, void *pvData_) | 
| Mailbox_ReceiveTail.  More... | |
| bool | Mailbox_TimedReceive (Mailbox_t handle, void *pvData_, uint32_t u32TimeoutMS_) | 
| Mailbox_TimedReceive.  More... | |
| bool | Mailbox_TimedReceiveTail (Mailbox_t handle, void *pvData_, uint32_t u32TimeoutMS_) | 
| Mailbox_TimedReceiveTail.  More... | |
| uint16_t | Mailbox_GetFreeSlots (Mailbox_t handle) | 
| Mailbox_GetFreeSlots.  More... | |
| bool | Mailbox_IsFull (Mailbox_t handle) | 
| Mailbox_IsFull.  More... | |
| bool | Mailbox_IsEmpty (Mailbox_t handle) | 
| Mailbox_IsEmpty.  More... | |
| void | ConditionVariable_Init (ConditionVariable_t handle) | 
| ConditionVariable_Init.  More... | |
| void | ConditionVariable_Wait (ConditionVariable_t handle, Mutex_t hMutex_) | 
| ConditionVariable_Wait.  More... | |
| void | ConditionVariable_Signal (ConditionVariable_t handle) | 
| ConditionVariable_Signal.  More... | |
| void | ConditionVariable_Broadcast (ConditionVariable_t handle) | 
| ConditionVariable_Broadcast.  More... | |
| bool | ConditionVariable_TimedWait (ConditionVariable_t handle, Mutex_t hMutex_, uint32_t u32WaitTimeMS_) | 
| ConditionVariable_TimedWait.  More... | |
| void | ReaderWriterLock_Init (ReaderWriterLock_t handle) | 
| ReaderWriterLock_Init.  More... | |
| void | ReaderWriterLock_AcquireReader (ReaderWriterLock_t handle) | 
| ReaderWriterLock_AcquireReader.  More... | |
| void | ReaderWriterLock_ReleaseReader (ReaderWriterLock_t handle) | 
| ReaderWriterLock_ReleaseReader.  More... | |
| void | ReaderWriterLock_AcquireWriter (ReaderWriterLock_t handle) | 
| ReaderWriterLock_AcquireWriter.  More... | |
| void | ReaderWriterLock_ReleaseWriter (ReaderWriterLock_t handle) | 
| ReaderWriterLock_ReleaseWriter.  More... | |
| bool | ReaderWriterLock_TimedAcquireWriter (ReaderWriterLock_t handle, uint32_t u32TimeoutMs_) | 
| ReaderWriterLock_TimedAcquireWriter.  More... | |
| bool | ReaderWriterLock_TimedAcquireReader (ReaderWriterLock_t handle, uint32_t u32TimeoutMs_) | 
| ReaderWriterLock_TimedAcquireReader.  More... | |
| void | Kernel_SetDebugPrintFunction (kernel_debug_print_t pfPrintFunction_) | 
| Kernel_SetDebugPrintFunction.  More... | |
| void | Kernel_DebugPrint (const char *szString_) | 
| KernelDebug_DebugPrint.  More... | |
| #define CONDITIONVARIABLE_SIZE (sizeof(Fake_ConditionVariable)) | 
| #define DECLARE_CONDITIONVARIABLE | ( | name | ) | 
| #define DECLARE_COROUTINE | ( | name | ) | 
| #define DECLARE_MAILBOX | ( | name | ) | 
| #define DECLARE_MESSAGE | ( | name | ) | 
| #define DECLARE_MESSAGEPOOL | ( | name | ) | 
| #define DECLARE_MESSAGEQUEUE | ( | name | ) | 
| #define DECLARE_MUTEX | ( | name | ) | 
| #define DECLARE_NOTIFY | ( | name | ) | 
| #define DECLARE_READERWRITERLOCK | ( | name | ) | 
| #define DECLARE_SEMAPHORE | ( | name | ) | 
| #define DECLARE_THREAD | ( | name | ) | 
| #define DECLARE_TIMER | ( | name | ) | 
| #define READERWRITERLOCK_SIZE (sizeof(Fake_ReaderWriterLock)) | 
| typedef void* ConditionVariable_t | 
| typedef void(* coroutine_callback_t) (Coroutine_t caller, void *pvContext) | 
| typedef void* Coroutine_t | 
| typedef void(* kernel_debug_print_t) (const char *szString_) | 
| typedef void* MessagePool_t | 
| typedef void* MessageQueue_t | 
| typedef void* Notify_t | 
| typedef void* ReaderWriterLock_t | 
| typedef void* Semaphore_t | 
| typedef void(* timer_callback_t) (Thread_t hOwner_, void *pvData_) | 
| enum thread_state_t | 
Define the various states that a thread can be in
| Mailbox_t Alloc_Mailbox | ( | void | ) | 
Alloc_Mailbox.
Definition at line 123 of file mark3c.cpp.
| void* Alloc_Memory | ( | size_t | eSize_ | ) | 
Alloc_Memory.
| eSize_ | Size in bytes to allocate from the one-time-allocate heap | 
| Message_t Alloc_Message | ( | void | ) | 
Alloc_Message.
Definition at line 76 of file mark3c.cpp.
| MessagePool_t Alloc_MessagePool | ( | void | ) | 
Definition at line 100 of file mark3c.cpp.
| MessageQueue_t Alloc_MessageQueue | ( | void | ) | 
Alloc_MessageQueue.
Definition at line 88 of file mark3c.cpp.
| Mutex_t Alloc_Mutex | ( | void | ) | 
Alloc_Mutex.
Definition at line 52 of file mark3c.cpp.
| Notify_t Alloc_Notify | ( | void | ) | 
Alloc_Notify.
Definition at line 112 of file mark3c.cpp.
| Semaphore_t Alloc_Semaphore | ( | void | ) | 
Alloc_Semaphore.
Definition at line 40 of file mark3c.cpp.
| Thread_t Alloc_Thread | ( | void | ) | 
Alloc_Thread.
Definition at line 156 of file mark3c.cpp.
| Timer_t Alloc_Timer | ( | void | ) | 
Alloc_Timer.
Definition at line 167 of file mark3c.cpp.
| uint16_t Atomic_Add16 | ( | uint16_t * | pu16Source_, | 
| uint16_t | u16Val_ | ||
| ) | 
Atomic_Add16.
| pu16Source_ | Pointer to a variable | 
| u16Val_ | Value to add to the variable | 
Definition at line 649 of file mark3c.cpp.
| uint32_t Atomic_Add32 | ( | uint32_t * | pu32Source_, | 
| uint32_t | u32Val_ | ||
| ) | 
Atomic_Add32.
| pu32Source_ | Pointer to a variable | 
| u32Val_ | Value to add to the variable | 
Definition at line 655 of file mark3c.cpp.
| uint8_t Atomic_Add8 | ( | uint8_t * | pu8Source_, | 
| uint8_t | u8Val_ | ||
| ) | 
Atomic_Add8.
| pu8Source_ | Pointer to a variable | 
| u8Val_ | Value to add to the variable | 
Definition at line 643 of file mark3c.cpp.
| uint16_t Atomic_Set16 | ( | uint16_t * | pu16Source_, | 
| uint16_t | u16Val_ | ||
| ) | 
Atomic_Set16.
| pu16Source_ | Pointer to a variable to set the value of | 
| u16Val_ | New value to set in the variable | 
Definition at line 631 of file mark3c.cpp.
| uint32_t Atomic_Set32 | ( | uint32_t * | pu32Source_, | 
| uint32_t | u32Val_ | ||
| ) | 
Atomic_Set32.
| pu32Source_ | Pointer to a variable to set the value of | 
| u32Val_ | New value to set in the variable | 
Definition at line 637 of file mark3c.cpp.
| uint8_t Atomic_Set8 | ( | uint8_t * | pu8Source_, | 
| uint8_t | u8Val_ | ||
| ) | 
Atomic_Set8.
| pu8Source_ | Pointer to a variable to set the value of | 
| u8Val_ | New value to set in the variable | 
Definition at line 625 of file mark3c.cpp.
| uint16_t Atomic_Sub16 | ( | uint16_t * | pu16Source_, | 
| uint16_t | u16Val_ | ||
| ) | 
Atomic_Sub16.
| pu16Source_ | Pointer to a variable | 
| u16Val_ | Value to subtract from the variable | 
Definition at line 667 of file mark3c.cpp.
| uint32_t Atomic_Sub32 | ( | uint32_t * | pu32Source_, | 
| uint32_t | u32Val_ | ||
| ) | 
Atomic_Sub32.
| pu32Source_ | Pointer to a variable | 
| u32Val_ | Value to subtract from the variable | 
Definition at line 673 of file mark3c.cpp.
| uint8_t Atomic_Sub8 | ( | uint8_t * | pu8Source_, | 
| uint8_t | u8Val_ | ||
| ) | 
Atomic_Sub8.
| pu8Source_ | Pointer to a variable | 
| u8Val_ | Value to subtract from the variable | 
Definition at line 661 of file mark3c.cpp.
| bool Atomic_TestAndSet | ( | bool * | pbLock | ) | 
Atomic_TestAndSet.
| pbLock | Pointer to a value to test against. This will always be set to "true" at the end of a call to TestAndSet. | 
Definition at line 679 of file mark3c.cpp.
| void ConditionVariable_Broadcast | ( | ConditionVariable_t | handle | ) | 
ConditionVariable_Broadcast.
| handle | Handle of the condition variable object | 
Definition at line 885 of file mark3c.cpp.
| void ConditionVariable_Init | ( | ConditionVariable_t | handle | ) | 
ConditionVariable_Init.
| handle | Handle of the condition variable object | 
Definition at line 866 of file mark3c.cpp.
| void ConditionVariable_Signal | ( | ConditionVariable_t | handle | ) | 
ConditionVariable_Signal.
| handle | Handle of the condition variable object | 
Definition at line 879 of file mark3c.cpp.
| bool ConditionVariable_TimedWait | ( | ConditionVariable_t | handle, | 
| Mutex_t | hMutex_, | ||
| uint32_t | u32WaitTimeMS_ | ||
| ) | 
ConditionVariable_TimedWait.
| handle | Handle of the condition variable object | 
| hMutex_ | Handle of the mutex to lock on acquisition of the condition variable | 
| u32WaitTimeMS_ | Maximum time to wait for object | 
Definition at line 891 of file mark3c.cpp.
| void ConditionVariable_Wait | ( | ConditionVariable_t | handle, | 
| Mutex_t | hMutex_ | ||
| ) | 
ConditionVariable_Wait.
| handle | Handle of the condition variable object | 
| hMutex_ | Handle of the mutex to lock on acquisition of the condition variable | 
Definition at line 872 of file mark3c.cpp.
| void Free_Mailbox | ( | Mailbox_t | handle | ) | 
Definition at line 128 of file mark3c.cpp.
| void Free_Memory | ( | void * | pvObject_ | ) | 
Free_Memory.
| pvObject_ | Pointer to previously allocated block of memory | 
Definition at line 34 of file mark3c.cpp.
| void Free_Message | ( | Message_t | handle | ) | 
Definition at line 82 of file mark3c.cpp.
| void Free_MessagePool | ( | MessagePool_t | handle | ) | 
Definition at line 106 of file mark3c.cpp.
| void Free_MessageQueue | ( | MessageQueue_t | handle | ) | 
Definition at line 94 of file mark3c.cpp.
| void Free_Mutex | ( | Mutex_t | handle | ) | 
Definition at line 58 of file mark3c.cpp.
| void Free_Notify | ( | Notify_t | handle | ) | 
Definition at line 118 of file mark3c.cpp.
| void Free_Semaphore | ( | Semaphore_t | handle | ) | 
Definition at line 46 of file mark3c.cpp.
| void Free_Thread | ( | Thread_t | handle | ) | 
Definition at line 161 of file mark3c.cpp.
| void Free_Timer | ( | Timer_t | handle | ) | 
Definition at line 172 of file mark3c.cpp.
| void Kernel_DebugPrint | ( | const char * | szString_ | ) | 
KernelDebug_DebugPrint.
| szString_ | String to print to debug interface | 
Definition at line 293 of file mark3c.cpp.
| uint32_t Kernel_GetTicks | ( | void | ) | 
Kernel_GetTicks.
Definition at line 227 of file mark3c.cpp.
| void Kernel_Init | ( | void | ) | 
| bool Kernel_IsPanic | ( | void | ) | 
Kernel_IsPanic.
Definition at line 215 of file mark3c.cpp.
| bool Kernel_IsStarted | ( | void | ) | 
Kernel_IsStarted.
Definition at line 203 of file mark3c.cpp.
| void Kernel_Panic | ( | uint16_t | u16Cause_ | ) | 
Kernel_Panic.
| u16Cause_ | Reason for the kernel panic | 
Definition at line 221 of file mark3c.cpp.
| void Kernel_SetDebugPrintFunction | ( | kernel_debug_print_t | pfPrintFunction_ | ) | 
Kernel_SetDebugPrintFunction.
| pfPrintFunction_ | Function to use to print debug information from the kernel | 
Definition at line 287 of file mark3c.cpp.
| void Kernel_SetPanic | ( | panic_func_t | pfPanic_ | ) | 
Kernel_SetPanic.
| pfPanic_ | Panic function pointer | 
Definition at line 209 of file mark3c.cpp.
| void Kernel_Start | ( | void | ) | 
| uint16_t Mailbox_GetFreeSlots | ( | Mailbox_t | handle | ) | 
Mailbox_GetFreeSlots.
| handle | Handle of the mailbox object | 
Definition at line 843 of file mark3c.cpp.
| void Mailbox_Init | ( | Mailbox_t | handle, | 
| void * | pvBuffer_, | ||
| uint16_t | u16BufferSize_, | ||
| uint16_t | u16ElementSize_ | ||
| ) | 
Mailbox_Init.
| handle | Handle of the mailbox object | 
| pvBuffer_ | Pointer to the static buffer to use for the mailbox | 
| u16BufferSize_ | Size of the mailbox buffer, in bytes | 
| u16ElementSize_ | Size of each envelope, in bytes | 
Definition at line 780 of file mark3c.cpp.
| bool Mailbox_IsEmpty | ( | Mailbox_t | handle | ) | 
Mailbox_IsEmpty.
| handle | Handle of the mailbox object | 
Definition at line 857 of file mark3c.cpp.
| bool Mailbox_IsFull | ( | Mailbox_t | handle | ) | 
Mailbox_IsFull.
| handle | Handle of the mailbox object | 
Definition at line 850 of file mark3c.cpp.
| void Mailbox_Receive | ( | Mailbox_t | handle, | 
| void * | pvData_ | ||
| ) | 
Mailbox_Receive.
| handle | Handle of the mailbox object | 
| pvData_ | Pointer to a buffer that will have the envelope's contents copied into upon delivery. | 
Definition at line 815 of file mark3c.cpp.
| void Mailbox_ReceiveTail | ( | Mailbox_t | handle, | 
| void * | pvData_ | ||
| ) | 
Mailbox_ReceiveTail.
| handle | Handle of the mailbox object | 
| pvData_ | Pointer to a buffer that will have the envelope's contents copied into upon delivery. | 
Definition at line 822 of file mark3c.cpp.
| bool Mailbox_Send | ( | Mailbox_t | handle, | 
| void * | pvData_ | ||
| ) | 
Mailbox_Send.
| handle | Handle of the mailbox object | 
| pvData_ | Pointer to the data object to send to the mailbox. | 
Definition at line 787 of file mark3c.cpp.
| bool Mailbox_SendTail | ( | Mailbox_t | handle, | 
| void * | pvData_ | ||
| ) | 
Mailbox_SendTail.
| handle | Handle of the mailbox object | 
| pvData_ | Pointer to the data object to send to the mailbox. | 
Definition at line 794 of file mark3c.cpp.
| bool Mailbox_TimedReceive | ( | Mailbox_t | handle, | 
| void * | pvData_, | ||
| uint32_t | u32TimeoutMS_ | ||
| ) | 
Mailbox_TimedReceive.
| handle | Handle of the mailbox object | 
| pvData_ | Pointer to a buffer that will have the envelope's contents copied into upon delivery. | 
| u32TimeoutMS_ | Maximum time to wait for delivery. | 
Definition at line 829 of file mark3c.cpp.
| bool Mailbox_TimedReceiveTail | ( | Mailbox_t | handle, | 
| void * | pvData_, | ||
| uint32_t | u32TimeoutMS_ | ||
| ) | 
Mailbox_TimedReceiveTail.
| handle | Handle of the mailbox object | 
| pvData_ | Pointer to a buffer that will have the envelope's contents copied into upon delivery. | 
| u32TimeoutMS_ | Maximum time to wait for delivery. | 
Definition at line 836 of file mark3c.cpp.
| bool Mailbox_TimedSend | ( | Mailbox_t | handle, | 
| void * | pvData_, | ||
| uint32_t | u32TimeoutMS_ | ||
| ) | 
Mailbox_TimedSend.
| handle | Handle of the mailbox object | 
| pvData_ | Pointer to the data object to send to the mailbox. | 
| u32TimeoutMS_ | Maximum time to wait for a free transmit slot | 
Definition at line 801 of file mark3c.cpp.
| bool Mailbox_TimedSendTail | ( | Mailbox_t | handle, | 
| void * | pvData_, | ||
| uint32_t | u32TimeoutMS_ | ||
| ) | 
Mailbox_TimedSendTail.
| handle | Handle of the mailbox object | 
| pvData_ | Pointer to the data object to send to the mailbox. | 
| u32TimeoutMS_ | Maximum time to wait for a free transmit slot | 
Definition at line 808 of file mark3c.cpp.
| uint16_t Message_GetCode | ( | Message_t | handle | ) | 
Message_GetCode.
| handle | Handle of the message object | 
Definition at line 715 of file mark3c.cpp.
| void* Message_GetData | ( | Message_t | handle | ) | 
Message_GetData.
| handle | Handle of the message object | 
Definition at line 701 of file mark3c.cpp.
| void Message_Init | ( | Message_t | handle | ) | 
Message_Init.
| handle | Handle of the message object | 
Definition at line 687 of file mark3c.cpp.
| void Message_SetCode | ( | Message_t | handle, | 
| uint16_t | u16Code_ | ||
| ) | 
Message_SetCode.
| handle | Handle of the message object | 
| u16Code_ | Data code to set in the object | 
Definition at line 708 of file mark3c.cpp.
| void Message_SetData | ( | Message_t | handle, | 
| void * | pvData_ | ||
| ) | 
Message_SetData.
| handle | Handle of the message object | 
| pvData_ | Pointer to the data object to send in the message | 
Definition at line 694 of file mark3c.cpp.
| void MessagePool_Init | ( | MessagePool_t | handle | ) | 
MessagePool_Init.
| handle | Handle of the message pool object | 
Definition at line 736 of file mark3c.cpp.
| Message_t MessagePool_Pop | ( | MessagePool_t | handle | ) | 
MessagePool_Pop.
| handle | Handle of the message pool object | 
Definition at line 750 of file mark3c.cpp.
| void MessagePool_Push | ( | MessagePool_t | handle, | 
| Message_t | msg | ||
| ) | 
MessagePool_Push.
| handle | Handle of the message pool object | 
| msg | Message object to return back to the pool | 
Definition at line 743 of file mark3c.cpp.
| uint16_t MessageQueue_GetCount | ( | MessageQueue_t | handle | ) | 
MessageQueue_GetCount.
Definition at line 771 of file mark3c.cpp.
| void MessageQueue_Init | ( | MessageQueue_t | handle | ) | 
MessageQueue_Init.
| handle | Handle to the message queue to initialize | 
Definition at line 722 of file mark3c.cpp.
| Message_t MessageQueue_Receive | ( | MessageQueue_t | handle | ) | 
MessageQueue_Receive.
| handle | Handle of the message queue object | 
Definition at line 729 of file mark3c.cpp.
| void MessageQueue_Send | ( | MessageQueue_t | handle, | 
| Message_t | hMessage_ | ||
| ) | 
MessageQueue_Send.
| handle | Handle of the message queue object | 
| hMessage_ | Handle to the message to send to the given queue | 
Definition at line 764 of file mark3c.cpp.
| Message_t MessageQueue_TimedReceive | ( | MessageQueue_t | handle, | 
| uint32_t | u32TimeWaitMS_ | ||
| ) | 
MessageQueue_TimedReceive.
| handle | Handle of the message queue object | 
| u32TimeWaitMS_ | The amount of time in ms to wait for a message before timing out and unblocking the waiting thread. | 
Definition at line 757 of file mark3c.cpp.
| void Mutex_Claim | ( | Mutex_t | handle | ) | 
Mutex_Claim.
| handle | Handle of the mutex | 
Definition at line 526 of file mark3c.cpp.
| void Mutex_Init | ( | Mutex_t | handle | ) | 
Mutex_Init.
| handle | Handle of the mutex | 
Definition at line 519 of file mark3c.cpp.
| void Mutex_Release | ( | Mutex_t | handle | ) | 
Mutex_Release.
| handle | Handle of the mutex | 
Definition at line 533 of file mark3c.cpp.
| bool Mutex_TimedClaim | ( | Mutex_t | handle, | 
| uint32_t | u32WaitTimeMS_ | ||
| ) | 
Mutex_TimedClaim.
| handle | Handle of the mutex | 
| u32WaitTimeMS_ | Time to wait before aborting | 
Definition at line 540 of file mark3c.cpp.
| void Notify_Init | ( | Notify_t | handle | ) | 
Notify_Init.
| handle | Handle of the notification object | 
Definition at line 595 of file mark3c.cpp.
| void Notify_Signal | ( | Notify_t | handle | ) | 
Notify_Signal.
| handle | Handle of the notification object | 
Definition at line 602 of file mark3c.cpp.
| bool Notify_TimedWait | ( | Notify_t | handle, | 
| uint32_t | u32WaitTimeMS_, | ||
| bool * | pbFlag_ | ||
| ) | 
Notify_TimedWait.
| handle | Handle of the notification object | 
| u32WaitTimeMS_ | Maximum time to wait for notification in ms | 
| pbFlag_ | Flag to set to true on notification | 
Definition at line 616 of file mark3c.cpp.
| void Notify_Wait | ( | Notify_t | handle, | 
| bool * | pbFlag_ | ||
| ) | 
Notify_Wait.
| handle | Handle of the notification object | 
| pbFlag_ | Flag to set to true on notification | 
Definition at line 609 of file mark3c.cpp.
| void ReaderWriterLock_AcquireReader | ( | ReaderWriterLock_t | handle | ) | 
ReaderWriterLock_AcquireReader.
| handle | Handle of the reader-writer object | 
Definition at line 908 of file mark3c.cpp.
| void ReaderWriterLock_AcquireWriter | ( | ReaderWriterLock_t | handle | ) | 
ReaderWriterLock_AcquireWriter.
| handle | Handle of the reader-writer object | 
Definition at line 922 of file mark3c.cpp.
| void ReaderWriterLock_Init | ( | ReaderWriterLock_t | handle | ) | 
ReaderWriterLock_Init.
| handle | Handle of the reader-writer object | 
Definition at line 901 of file mark3c.cpp.
| void ReaderWriterLock_ReleaseReader | ( | ReaderWriterLock_t | handle | ) | 
ReaderWriterLock_ReleaseReader.
| handle | Handle of the reader-writer object | 
Definition at line 915 of file mark3c.cpp.
| void ReaderWriterLock_ReleaseWriter | ( | ReaderWriterLock_t | handle | ) | 
ReaderWriterLock_ReleaseWriter.
| handle | Handle of the reader-writer object | 
Definition at line 929 of file mark3c.cpp.
| bool ReaderWriterLock_TimedAcquireReader | ( | ReaderWriterLock_t | handle, | 
| uint32_t | u32TimeoutMs_ | ||
| ) | 
ReaderWriterLock_TimedAcquireReader.
| handle | Handle of the reader-writer object | 
| u32TimeoutMs_ | Maximum time to wait for the reader lock before bailing | 
Definition at line 943 of file mark3c.cpp.
| bool ReaderWriterLock_TimedAcquireWriter | ( | ReaderWriterLock_t | handle, | 
| uint32_t | u32TimeoutMs_ | ||
| ) | 
ReaderWriterLock_TimedAcquireWriter.
| handle | Handle of the reader-writer object | 
| u32TimeoutMs_ | Maximum time to wait for the writer lock before bailing | 
Definition at line 936 of file mark3c.cpp.
| void Scheduler_Enable | ( | bool | bEnable_ | ) | 
Scheduler_Enable.
| bEnable_ | true to enable, false to disable the scheduler | 
Definition at line 300 of file mark3c.cpp.
| Thread_t Scheduler_GetCurrentThread | ( | void | ) | 
Scheduler_GetCurrentThread.
Definition at line 312 of file mark3c.cpp.
| bool Scheduler_IsEnabled | ( | void | ) | 
Scheduler_IsEnabled.
Definition at line 306 of file mark3c.cpp.
| void Semaphore_Init | ( | Semaphore_t | handle, | 
| uint16_t | u16InitVal_, | ||
| uint16_t | u16MaxVal_ | ||
| ) | 
Semaphore_Init.
| handle | Handle of the semaphore | 
| u16InitVal_ | Initial value of the semaphore | 
| u16MaxVal_ | Maximum value that can be held for a semaphore | 
Definition at line 489 of file mark3c.cpp.
| void Semaphore_Pend | ( | Semaphore_t | handle | ) | 
Semaphore_Pend.
| handle | Handle of the semaphore | 
Definition at line 503 of file mark3c.cpp.
| void Semaphore_Post | ( | Semaphore_t | handle | ) | 
Semaphore_Post.
| handle | Handle of the semaphore | 
Definition at line 496 of file mark3c.cpp.
| bool Semaphore_TimedPend | ( | Semaphore_t | handle, | 
| uint32_t | u32WaitTimeMS_ | ||
| ) | 
Semaphore_TimedPend.
| handle | Handle of the semaphore | 
| u32WaitTimeMS_ | Time in ms to wait | 
Definition at line 510 of file mark3c.cpp.
| void Thread_CoopYield | ( | void | ) | 
| void Thread_Exit | ( | Thread_t | handle | ) | 
Thread_Exit.
| handle | Handle of the thread | 
Definition at line 392 of file mark3c.cpp.
| PORT_PRIO_TYPE Thread_GetCurPriority | ( | Thread_t | handle | ) | 
Thread_GetCurPriority.
| handle | Handle of the thread | 
Definition at line 365 of file mark3c.cpp.
| uint8_t Thread_GetID | ( | Thread_t | handle | ) | 
Thread_GetID.
| handle | Handle of the thread | 
Definition at line 437 of file mark3c.cpp.
| PORT_PRIO_TYPE Thread_GetPriority | ( | Thread_t | handle | ) | 
Thread_GetPriority.
| handle | Handle of the thread | 
Definition at line 359 of file mark3c.cpp.
| thread_state_t Thread_GetState | ( | Thread_t | handle | ) | 
Thread_GetState.
| handle | Handle of the thread | 
Definition at line 449 of file mark3c.cpp.
| void Thread_Init | ( | Thread_t | handle, | 
| K_WORD * | pwStack_, | ||
| uint16_t | u16StackSize_, | ||
| PORT_PRIO_TYPE | uXPriority_, | ||
| thread_entry_func_t | pfEntryPoint_, | ||
| void * | pvArg_ | ||
| ) | 
Thread_Init.
| handle | Handle of the thread to initialize | 
| pwStack_ | Pointer to the stack to use for the thread | 
| u16StackSize_ | Size of the stack (in bytes) | 
| uXPriority_ | Priority of the thread (0 = idle, 7 = max) | 
| pfEntryPoint_ | This is the function that gets called when the thread is started | 
| pvArg_ | Pointer to the argument passed into the thread's entrypoint function. | 
Definition at line 321 of file mark3c.cpp.
| void Thread_SetID | ( | Thread_t | handle, | 
| uint8_t | u8ID_ | ||
| ) | 
Thread_SetID.
| handle | Handle of the thread | 
| u8ID_ | ID To assign to the thread | 
Definition at line 431 of file mark3c.cpp.
| void Thread_SetPriority | ( | Thread_t | handle, | 
| PORT_PRIO_TYPE | uXPriority_ | ||
| ) | 
Thread_SetPriority.
| handle | Handle of the thread | 
| uXPriority_ | New priority level | 
Definition at line 385 of file mark3c.cpp.
| void Thread_Sleep | ( | uint32_t | u32TimeMs_ | ) | 
Thread_Sleep.
| u32TimeMs_ | Time in ms to block the thread for | 
Definition at line 399 of file mark3c.cpp.
| void Thread_Start | ( | Thread_t | handle | ) | 
Thread_Start.
| handle | Handle of the thread to start | 
Definition at line 333 of file mark3c.cpp.
| void Thread_Stop | ( | Thread_t | handle | ) | 
Thread_Stop.
| handle | Handle of the thread to stop | 
Definition at line 340 of file mark3c.cpp.
| void Thread_Yield | ( | void | ) | 
| void Timer_Init | ( | Timer_t | handle | ) | 
Timer_Init.
| handle | Handle of the timer | 
Definition at line 459 of file mark3c.cpp.
| void Timer_Restart | ( | Timer_t | handle | ) | 
Timer_Restart.
| handle | Handle of the timer to restart. | 
Definition at line 480 of file mark3c.cpp.
| void Timer_Start | ( | Timer_t | handle, | 
| bool | bRepeat_, | ||
| uint32_t | u32IntervalMs_, | ||
| timer_callback_t | pfCallback_, | ||
| void * | pvData_ | ||
| ) | 
Timer_Start.
| handle | Handle of the timer | 
| bRepeat_ | Restart the timer continuously on expiry | 
| u32IntervalMs_ | Time in ms to expiry | 
| pfCallback_ | Callback to run on timer expiry | 
| pvData_ | Data to pass to the callback on expiry | 
Definition at line 466 of file mark3c.cpp.
| void Timer_Stop | ( | Timer_t | handle | ) | 
Timer_Stop.
| handle | Handle of the timer | 
Definition at line 473 of file mark3c.cpp.