1// Group creation for Reference
2/**
3\addtogroup CMSIS_RTOS CMSIS-RTOS2 API
4\brief C interface of CMSIS-RTOS2 API defined in cmsis_os2.h
5\details
6The CMSIS-RTOS2 is a generic API layer that interfaces to an RTOS kernel.
7
8The complete API interface is defined in the \ref cmsis_os2_h. For generic overview refer to \ref usingOS2.
9
10This chapter provides details for individual API items.
11
12\section rtos_api2_functions CMSIS-RTOS2 Function Reference
13
14 - \ref CMSIS_RTOS_KernelCtrl
15   - \ref osKernelGetInfo : \copybrief osKernelGetInfo
16   - \ref osKernelGetState : \copybrief osKernelGetState
17   - \ref osKernelGetSysTimerCount : \copybrief osKernelGetSysTimerCount
18   - \ref osKernelGetSysTimerFreq : \copybrief osKernelGetSysTimerFreq
19   - \ref osKernelInitialize : \copybrief osKernelInitialize
20   - \ref osKernelLock : \copybrief osKernelLock
21   - \ref osKernelUnlock : \copybrief osKernelUnlock
22   - \ref osKernelRestoreLock : \copybrief osKernelRestoreLock
23   - \ref osKernelResume : \copybrief osKernelResume
24   - \ref osKernelStart : \copybrief osKernelStart
25   - \ref osKernelSuspend : \copybrief osKernelSuspend
26   - \ref osKernelGetTickCount : \copybrief osKernelGetTickCount
27   - \ref osKernelGetTickFreq : \copybrief osKernelGetTickFreq
28   - \ref osKernelDestroyClass : \copybrief osKernelDestroyClass
29   - \ref osKernelProtect : \copybrief osKernelProtect
30   - \ref osFaultResume : \copybrief osFaultResume
31<br><br>
32 - \ref CMSIS_RTOS_ThreadMgmt
33   - \ref osThreadDetach : \copybrief osThreadDetach
34   - \ref osThreadEnumerate : \copybrief osThreadEnumerate
35   - \ref osThreadExit : \copybrief osThreadExit
36   - \ref osThreadGetCount : \copybrief osThreadGetCount
37   - \ref osThreadGetId : \copybrief osThreadGetId
38   - \ref osThreadGetName : \copybrief osThreadGetName
39   - \ref osThreadGetPriority : \copybrief osThreadGetPriority
40   - \ref osThreadGetStackSize : \copybrief osThreadGetStackSize
41   - \ref osThreadGetStackSpace : \copybrief osThreadGetStackSpace
42   - \ref osThreadGetState : \copybrief osThreadGetState
43   - \ref osThreadJoin : \copybrief osThreadJoin
44   - \ref osThreadNew : \copybrief osThreadNew
45   - \ref osThreadResume : \copybrief osThreadResume
46   - \ref osThreadSetPriority : \copybrief osThreadSetPriority
47   - \ref osThreadSuspend : \copybrief osThreadSuspend
48   - \ref osThreadTerminate : \copybrief osThreadTerminate
49   - \ref osThreadYield : \copybrief osThreadYield
50   - \ref osThreadGetClass : \copybrief osThreadGetClass
51   - \ref osThreadGetZone : \copybrief osThreadGetZone
52   - \ref osThreadFeedWatchdog : \copybrief osThreadFeedWatchdog
53   - \ref osThreadProtectPrivileged : \copybrief osThreadProtectPrivileged
54   - \ref osThreadResumeClass : \copybrief osThreadResumeClass
55   - \ref osThreadSuspendClass : \copybrief osThreadSuspendClass
56   - \ref osThreadTerminateZone : \copybrief osThreadTerminateZone
57   - \ref osWatchdogAlarm_Handler : \copybrief osWatchdogAlarm_Handler
58   - \ref osZoneSetup_Callback : \copybrief osZoneSetup_Callback
59<br><br>
60 - \ref CMSIS_RTOS_ThreadFlagsMgmt
61   - \ref osThreadFlagsSet : \copybrief osThreadFlagsSet
62   - \ref osThreadFlagsClear : \copybrief osThreadFlagsClear
63   - \ref osThreadFlagsGet : \copybrief osThreadFlagsGet
64   - \ref osThreadFlagsWait : \copybrief osThreadFlagsWait
65<br><br>
66 - \ref CMSIS_RTOS_EventFlags
67   - \ref osEventFlagsGetName : \copybrief osEventFlagsGetName
68   - \ref osEventFlagsNew : \copybrief osEventFlagsNew
69   - \ref osEventFlagsDelete : \copybrief osEventFlagsDelete
70   - \ref osEventFlagsSet : \copybrief osEventFlagsSet
71   - \ref osEventFlagsClear : \copybrief osEventFlagsClear
72   - \ref osEventFlagsGet : \copybrief osEventFlagsGet
73   - \ref osEventFlagsWait : \copybrief osEventFlagsWait
74<br><br>
75 - \ref CMSIS_RTOS_Wait
76   - \ref osDelay : \copybrief osDelay
77   - \ref osDelayUntil : \copybrief osDelayUntil
78<br><br>
79 - \ref CMSIS_RTOS_TimerMgmt
80   - \ref osTimerDelete : \copybrief osTimerDelete
81   - \ref osTimerGetName : \copybrief osTimerGetName
82   - \ref osTimerIsRunning : \copybrief osTimerIsRunning
83   - \ref osTimerNew : \copybrief osTimerNew
84   - \ref osTimerStart : \copybrief osTimerStart
85   - \ref osTimerStop : \copybrief osTimerStop
86<br><br>
87 - \ref CMSIS_RTOS_MutexMgmt
88   - \ref osMutexAcquire : \copybrief osMutexAcquire
89   - \ref osMutexDelete : \copybrief osMutexDelete
90   - \ref osMutexGetName : \copybrief osMutexGetName
91   - \ref osMutexGetOwner : \copybrief osMutexGetOwner
92   - \ref osMutexNew : \copybrief osMutexNew
93   - \ref osMutexRelease : \copybrief osMutexRelease
94<br><br>
95 - \ref CMSIS_RTOS_SemaphoreMgmt
96   - \ref osSemaphoreAcquire : \copybrief osSemaphoreAcquire
97   - \ref osSemaphoreDelete : \copybrief osSemaphoreDelete
98   - \ref osSemaphoreGetCount : \copybrief osSemaphoreGetCount
99   - \ref osSemaphoreGetName : \copybrief osSemaphoreGetName
100   - \ref osSemaphoreNew : \copybrief osSemaphoreNew
101   - \ref osSemaphoreRelease : \copybrief osSemaphoreRelease
102<br><br>
103 - \ref CMSIS_RTOS_PoolMgmt
104   - \ref osMemoryPoolAlloc : \copybrief osMemoryPoolAlloc
105   - \ref osMemoryPoolDelete : \copybrief osMemoryPoolDelete
106   - \ref osMemoryPoolFree : \copybrief osMemoryPoolFree
107   - \ref osMemoryPoolGetBlockSize : \copybrief osMemoryPoolGetBlockSize
108   - \ref osMemoryPoolGetCapacity : \copybrief osMemoryPoolGetCapacity
109   - \ref osMemoryPoolGetCount : \copybrief osMemoryPoolGetCount
110   - \ref osMemoryPoolGetName : \copybrief osMemoryPoolGetName
111   - \ref osMemoryPoolGetSpace : \copybrief osMemoryPoolGetSpace
112   - \ref osMemoryPoolNew : \copybrief osMemoryPoolNew
113<br><br>
114 - \ref CMSIS_RTOS_Message
115   - \ref osMessageQueueDelete : \copybrief osMessageQueueDelete
116   - \ref osMessageQueueGet : \copybrief osMessageQueueGet
117   - \ref osMessageQueueGetCapacity : \copybrief osMessageQueueGetCapacity
118   - \ref osMessageQueueGetCount : \copybrief osMessageQueueGetCount
119   - \ref osMessageQueueGetMsgSize : \copybrief osMessageQueueGetMsgSize
120   - \ref osMessageQueueGetName : \copybrief osMessageQueueGetName
121   - \ref osMessageQueueGetSpace : \copybrief osMessageQueueGetSpace
122   - \ref osMessageQueueNew : \copybrief osMessageQueueNew
123   - \ref osMessageQueuePut : \copybrief osMessageQueuePut
124   - \ref osMessageQueueReset : \copybrief osMessageQueueReset
125
126The following CMSIS-RTOS C API v2 functions can be called from threads and \ref CMSIS_RTOS_ISR_Calls "Interrupt Service Routines"
127(ISR):
128   - \ref osKernelGetInfo, \ref osKernelGetState,
129     \ref osKernelGetTickCount, \ref osKernelGetTickFreq, \ref osKernelGetSysTimerCount, \ref osKernelGetSysTimerFreq
130   - \ref osThreadGetName, \ref osThreadGetId, \ref osThreadFlagsSet
131   - \ref osTimerGetName
132   - \ref osEventFlagsGetName, \ref osEventFlagsSet, \ref osEventFlagsClear, \ref osEventFlagsGet, \ref osEventFlagsWait
133   - \ref osMutexGetName
134   - \ref osSemaphoreGetName, \ref osSemaphoreAcquire, \ref osSemaphoreRelease, \ref osSemaphoreGetCount
135   - \ref osMemoryPoolGetName, \ref osMemoryPoolAlloc, \ref osMemoryPoolFree,
136     \ref osMemoryPoolGetCapacity, \ref osMemoryPoolGetBlockSize, \ref osMemoryPoolGetCount, \ref osMemoryPoolGetSpace
137   - \ref osMessageQueueGetName, \ref osMessageQueuePut, \ref osMessageQueueGet, \ref osMessageQueueGetCapacity,
138     \ref osMessageQueueGetMsgSize, \ref osMessageQueueGetCount, \ref osMessageQueueGetSpace
139
140*/
141