33 #define MICRIUM_SOURCE
36 #ifdef VSC_INCLUDE_SOURCE_FILE_NAMES
37 const CPU_CHAR *os_msg__c =
"$Id: $";
76 for (i = 0u; i < loops; i++) {
77 p_msg1->NextPtr = p_msg2;
78 p_msg1->MsgPtr = (
void *)0;
80 p_msg1->MsgTS = (
CPU_TS )0u;
84 p_msg1->NextPtr = (OS_MSG *)0;
85 p_msg1->MsgPtr = (
void *)0;
87 p_msg1->MsgTS = (
CPU_TS )0u;
111 #ifdef OS_SAFETY_CRITICAL
112 if (p_err == (
OS_ERR *)0) {
113 OS_SAFETY_CRITICAL_EXCEPTION();
118 #if OS_CFG_ARG_CHK_EN > 0u
161 qty = p_msg_q->NbrEntries;
163 p_msg = p_msg_q->InPtr;
164 p_msg->NextPtr = OSMsgPool.NextPtr;
165 OSMsgPool.NextPtr = p_msg_q->OutPtr;
166 OSMsgPool.NbrUsed -= p_msg_q->NbrEntries;
167 OSMsgPool.NbrFree += p_msg_q->NbrEntries;
170 p_msg_q->InPtr = (OS_MSG *)0;
171 p_msg_q->OutPtr = (OS_MSG *)0;
200 p_msg_q->InPtr = (OS_MSG *)0;
201 p_msg_q->OutPtr = (OS_MSG *)0;
239 #ifdef OS_SAFETY_CRITICAL
240 if (p_err == (
OS_ERR *)0) {
241 OS_SAFETY_CRITICAL_EXCEPTION();
248 if (p_ts != (
CPU_TS *)0) {
255 p_msg = p_msg_q->OutPtr;
256 p_void = p_msg->MsgPtr;
257 *p_msg_size = p_msg->MsgSize;
258 if (p_ts != (
CPU_TS *)0) {
259 *p_ts = p_msg->MsgTS;
261 p_msg_q->OutPtr = p_msg->NextPtr;
262 if (p_msg_q->OutPtr == (OS_MSG *)0) {
263 p_msg_q->InPtr = (OS_MSG *)0;
266 p_msg_q->NbrEntries--;
268 p_msg->NextPtr = OSMsgPool.NextPtr;
269 OSMsgPool.NextPtr = p_msg;
321 #ifdef OS_SAFETY_CRITICAL
322 if (p_err == (
OS_ERR *)0) {
323 OS_SAFETY_CRITICAL_EXCEPTION();
328 if (p_msg_q->NbrEntries >= p_msg_q->NbrEntriesSize) {
338 p_msg = OSMsgPool.NextPtr;
339 OSMsgPool.NextPtr = p_msg->NextPtr;
342 if (OSMsgPool.NbrUsedMax < OSMsgPool.NbrUsed) {
343 OSMsgPool.NbrUsedMax = OSMsgPool.NbrUsed;
346 p_msg_q->InPtr = p_msg;
347 p_msg_q->OutPtr = p_msg;
351 p_msg_in = p_msg_q->InPtr;
352 p_msg_in->NextPtr = p_msg;
353 p_msg->NextPtr = (OS_MSG *)0;
354 p_msg_q->InPtr = p_msg;
356 p_msg->NextPtr = p_msg_q->OutPtr;
357 p_msg_q->OutPtr = p_msg;
359 p_msg_q->NbrEntries++;
361 if (p_msg_q->NbrEntriesMax < p_msg_q->NbrEntries) {
362 p_msg_q->NbrEntriesMax = p_msg_q->NbrEntries;
364 p_msg->MsgPtr = p_void;
365 p_msg->MsgSize = msg_size;