sempahore wrapper extended

This commit is contained in:
2020-02-25 17:04:21 +01:00
parent 685c18dc4e
commit 083cc7c50a
9 changed files with 204 additions and 25 deletions

View File

@ -1,5 +1,4 @@
#include "MessageQueue.h"
#include "task.h"
#include <framework/serviceinterface/ServiceInterfaceStream.h>
@ -24,6 +23,12 @@ void MessageQueue::switchSystemContext(SystemContext callContext) {
this->callContext = callContext;
}
void MessageQueue::requestContextSwitch(SystemContext callContext) {
if(callContext == SystemContext::isr_context) {
portYIELD_FROM_ISR();
}
}
ReturnValue_t MessageQueue::sendMessage(MessageQueueId_t sendTo,
MessageQueueMessage* message, bool ignoreFault) {
return sendMessageFrom(sendTo, message, this->getId(), ignoreFault);
@ -72,11 +77,7 @@ ReturnValue_t MessageQueue::sendMessageFromMessageQueue(MessageQueueId_t sendTo,
return handleSendResult(result, ignoreFault);
}
void MessageQueue::requestContextSwitch(SystemContext callContext) {
if(callContext == SystemContext::isr_context) {
portYIELD_FROM_ISR();
}
}
ReturnValue_t MessageQueue::handleSendResult(BaseType_t result, bool ignoreFault) {
if (result != pdPASS) {