Colored prefix option only if colored output is enabled #449
|
@ -43,12 +43,12 @@ endif()
|
|||
|
||||
set(FSFW_OSAL_DEFINITION FSFW_HOST)
|
||||
|
||||
if(${OS_FSFW} STREQUAL host)
|
||||
if(OS_FSFW MATCHES host)
|
||||
set(OS_FSFW_NAME "Host")
|
||||
elseif(${OS_FSFW} STREQUAL linux)
|
||||
elseif(OS_FSFW MATCHES linux)
|
||||
set(OS_FSFW_NAME "Linux")
|
||||
set(FSFW_OSAL_DEFINITION FSFW_LINUX)
|
||||
elseif(${OS_FSFW} STREQUAL freertos)
|
||||
elseif(OS_FSFW MATCHES freertos)
|
||||
set(OS_FSFW_NAME "FreeRTOS")
|
||||
set(FSFW_OSAL_DEFINITION FSFW_FREERTOS)
|
||||
target_link_libraries(${LIB_FSFW_NAME} PRIVATE
|
||||
|
|
|
@ -21,11 +21,16 @@ public:
|
|||
static const uint8_t SUBSYSTEM_ID = SUBSYSTEM_ID::SYSTEM_1;
|
||||
//! [EXPORT] : [COMMENT] A RF available signal was detected. P1: raw RFA state, P2: 0
|
||||
static const Event RF_AVAILABLE = MAKE_EVENT(0, severity::INFO);
|
||||
static const Event RF_LOST = MAKE_EVENT(1, severity::INFO); //!< A previously found RF available signal was lost. P1: raw RFA state, P2: 0
|
||||
static const Event BIT_LOCK = MAKE_EVENT(2, severity::INFO); //!< A Bit Lock signal. Was detected. P1: raw BLO state, P2: 0
|
||||
static const Event BIT_LOCK_LOST = MAKE_EVENT(3, severity::INFO); //!< A previously found Bit Lock signal was lost. P1: raw BLO state, P2: 0
|
||||
//! [EXPORT] : [COMMENT] A previously found RF available signal was lost.
|
||||
//! P1: raw RFA state, P2: 0
|
||||
static const Event RF_LOST = MAKE_EVENT(1, severity::INFO);
|
||||
//! [EXPORT] : [COMMENT] A Bit Lock signal. Was detected. P1: raw BLO state, P2: 0
|
||||
static const Event BIT_LOCK = MAKE_EVENT(2, severity::INFO);
|
||||
//! [EXPORT] : [COMMENT] A previously found Bit Lock signal was lost. P1: raw BLO state, P2: 0
|
||||
static const Event BIT_LOCK_LOST = MAKE_EVENT(3, severity::INFO);
|
||||
// static const Event RF_CHAIN_LOST = MAKE_EVENT(4, severity::INFO); //!< The CCSDS Board detected that either bit lock or RF available or both are lost. No parameters.
|
||||
static const Event FRAME_PROCESSING_FAILED = MAKE_EVENT(5, severity::LOW); //!< The CCSDS Board could not interpret a TC
|
||||
//! [EXPORT] : [COMMENT] The CCSDS Board could not interpret a TC
|
||||
static const Event FRAME_PROCESSING_FAILED = MAKE_EVENT(5, severity::LOW);
|
||||
/**
|
||||
* The Constructor sets the passed parameters and nothing else.
|
||||
* @param set_frame_buffer The buffer in which incoming frame candidates are stored.
|
||||
|
|
|
@ -104,7 +104,8 @@ public:
|
|||
static const Event DEVICE_MISSED_REPLY = MAKE_EVENT(5, severity::LOW);
|
||||
static const Event DEVICE_UNKNOWN_REPLY = MAKE_EVENT(6, severity::LOW);
|
||||
static const Event DEVICE_UNREQUESTED_REPLY = MAKE_EVENT(7, severity::LOW);
|
||||
static const Event INVALID_DEVICE_COMMAND = MAKE_EVENT(8, severity::LOW); //!< Indicates a SW bug in child class.
|
||||
//! [EXPORT] : [COMMENT] Indicates a SW bug in child class.
|
||||
static const Event INVALID_DEVICE_COMMAND = MAKE_EVENT(8, severity::LOW);
|
||||
static const Event MONITORING_LIMIT_EXCEEDED = MAKE_EVENT(9, severity::LOW);
|
||||
static const Event MONITORING_AMBIGUOUS = MAKE_EVENT(10, severity::HIGH);
|
||||
|
||||
|
|
|
@ -22,10 +22,11 @@ target_sources(${LIB_FSFW_NAME}
|
|||
# FreeRTOS as a static library and set LIB_OS_NAME to the target name of the
|
||||
# library.
|
||||
if(NOT LIB_OS_NAME)
|
||||
message(FATAL_ERROR
|
||||
"FreeRTOS needs to be linked as a target and "
|
||||
"LIB_OS_NAME needs to be set to the target"
|
||||
message(STATUS
|
||||
"LIB_OS_NAME is empty. Make sure to include the FreeRTOS header path properly."
|
||||
)
|
||||
else()
|
||||
target_link_libraries(${LIB_FSFW_NAME} PRIVATE
|
||||
${LIB_OS_NAME}
|
||||
)
|
||||
endif()
|
||||
|
||||
target_link_libraries(${LIB_FSWFW_NAME} ${LIB_OS_NAME})
|
|
@ -3,6 +3,7 @@
|
|||
|
||||
#include "../../serviceinterface/ServiceInterfaceStream.h"
|
||||
|
||||
#include "FreeRTOS.h"
|
||||
#include "semphr.h"
|
||||
|
||||
// Make sure #define configUSE_COUNTING_SEMAPHORES 1 is set in
|
||||
|
|
|
@ -6,10 +6,13 @@
|
|||
#include "../../internalError/InternalErrorReporterIF.h"
|
||||
#include "../../ipc/MessageQueueIF.h"
|
||||
#include "../../ipc/MessageQueueMessageIF.h"
|
||||
#include "../../ipc/MessageQueueMessage.h"
|
||||
|
||||
#include "FreeRTOS.h"
|
||||
#include "queue.h"
|
||||
|
||||
#include "FreeRTOS.h"
|
||||
meierj marked this conversation as resolved
Outdated
|
||||
#include "queue.h"
|
||||
#include <fsfw/ipc/MessageQueueMessage.h>
|
||||
|
||||
/**
|
||||
* @brief This class manages sending and receiving of
|
||||
|
|
|
@ -17,7 +17,13 @@ QueueMapManager* QueueMapManager::instance() {
|
|||
|
||||
ReturnValue_t QueueMapManager::addMessageQueue(QueueHandle_t queue, MessageQueueId_t* id) {
|
||||
MutexGuard lock(mapLock);
|
||||
uint32_t currentId = queueCounter++;
|
||||
uint32_t currentId = queueCounter;
|
||||
queueCounter++;
|
||||
if(currentId == MessageQueueIF::NO_QUEUE) {
|
||||
// Skip the NO_QUEUE value
|
||||
currentId = queueCounter;
|
||||
queueCounter++;
|
||||
}
|
||||
auto returnPair = queueMap.emplace(currentId, queue);
|
||||
if(not returnPair.second) {
|
||||
#if FSFW_CPP_OSTREAM_ENABLED == 1
|
||||
|
|
|
@ -39,7 +39,7 @@ private:
|
|||
QueueMapManager();
|
||||
~QueueMapManager();
|
||||
|
||||
uint32_t queueCounter = 0;
|
||||
uint32_t queueCounter = MessageQueueIF::NO_QUEUE + 1;
|
||||
MutexIF* mapLock;
|
||||
QueueMap queueMap;
|
||||
static QueueMapManager* mqManagerInstance;
|
||||
|
|
|
@ -1,9 +1,10 @@
|
|||
#include "../../osal/FreeRTOS/BinarySemaphore.h"
|
||||
#include "../../osal/FreeRTOS/BinSemaphUsingTask.h"
|
||||
#include "../../osal/FreeRTOS/CountingSemaphore.h"
|
||||
#include "../../osal/FreeRTOS/CountingSemaphUsingTask.h"
|
||||
#include "BinarySemaphore.h"
|
||||
#include "BinSemaphUsingTask.h"
|
||||
#include "CountingSemaphore.h"
|
||||
#include "CountingSemaphUsingTask.h"
|
||||
|
||||
#include "../../tasks/SemaphoreFactory.h"
|
||||
#include "../../serviceinterface/ServiceInterfaceStream.h"
|
||||
#include "../../serviceinterface/ServiceInterface.h"
|
||||
|
||||
SemaphoreFactory* SemaphoreFactory::factoryInstance = nullptr;
|
||||
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
#ifndef FRAMEWORK_OSAL_FREERTOS_TASKMANAGEMENT_H_
|
||||
#define FRAMEWORK_OSAL_FREERTOS_TASKMANAGEMENT_H_
|
||||
#ifndef FSFW_OSAL_FREERTOS_TASKMANAGEMENT_H_
|
||||
#define FSFW_OSAL_FREERTOS_TASKMANAGEMENT_H_
|
||||
|
||||
#include "../../returnvalues/HasReturnvaluesIF.h"
|
||||
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
#include "Timekeeper.h"
|
||||
|
||||
#include <FreeRTOSConfig.h>
|
||||
#include "FreeRTOSConfig.h"
|
||||
|
||||
Timekeeper * Timekeeper::myinstance = nullptr;
|
||||
|
||||
|
|
|
@ -24,7 +24,13 @@ QueueMapManager* QueueMapManager::instance() {
|
|||
ReturnValue_t QueueMapManager::addMessageQueue(
|
||||
MessageQueueIF* queueToInsert, MessageQueueId_t* id) {
|
||||
MutexGuard lock(mapLock);
|
||||
uint32_t currentId = queueCounter++;
|
||||
uint32_t currentId = queueCounter;
|
||||
queueCounter++;
|
||||
if(currentId == MessageQueueIF::NO_QUEUE) {
|
||||
// Skip the NO_QUEUE value
|
||||
currentId = queueCounter;
|
||||
queueCounter++;
|
||||
}
|
||||
auto returnPair = queueMap.emplace(currentId, queueToInsert);
|
||||
if(not returnPair.second) {
|
||||
/* This should never happen for the atomic variable. */
|
||||
|
|
|
@ -41,7 +41,7 @@ private:
|
|||
QueueMapManager();
|
||||
~QueueMapManager();
|
||||
|
||||
uint32_t queueCounter = 0;
|
||||
uint32_t queueCounter = MessageQueueIF::NO_QUEUE + 1;
|
||||
MutexIF* mapLock;
|
||||
QueueMap queueMap;
|
||||
static QueueMapManager* mqManagerInstance;
|
||||
|
|
|
@ -171,9 +171,11 @@ bool ServiceInterfaceBuffer::crAdditionEnabled() const {
|
|||
return addCrToPreamble;
|
||||
}
|
||||
|
||||
void ServiceInterfaceBuffer::setAsciiColorPrefix(std::string colorPrefix) {
|
||||
this->colorPrefix = colorPrefix;
|
||||
}
|
||||
#if FSFW_COLORED_OUTPUT == 1
|
||||
void ServiceInterfaceBuffer::setAsciiColorPrefix(std::string colorPrefix) {
|
||||
meierj marked this conversation as resolved
Outdated
muellerr
commented
Usually code in preprocessor defines has not been indented yet. I'd keep it consistent Usually code in preprocessor defines has not been indented yet. I'd keep it consistent
|
||||
this->colorPrefix = colorPrefix;
|
||||
}
|
||||
#endif
|
||||
|
||||
#ifdef UT699
|
||||
#include "../osal/rtems/Interrupt.h"
|
||||
|
|
|
@ -19,9 +19,11 @@ bool ServiceInterfaceStream::crAdditionEnabled() const {
|
|||
return streambuf.crAdditionEnabled();
|
||||
}
|
||||
|
||||
#if FSFW_COLORED_OUTPUT == 1
|
||||
void ServiceInterfaceStream::setAsciiColorPrefix(std::string asciiColorCode) {
|
||||
streambuf.setAsciiColorPrefix(asciiColorCode);
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif
|
||||
|
||||
|
|
|
@ -46,7 +46,9 @@ public:
|
|||
*/
|
||||
bool crAdditionEnabled() const;
|
||||
|
||||
#if FSFW_COLORED_OUTPUT == 1
|
||||
void setAsciiColorPrefix(std::string asciiColorCode);
|
||||
#endif
|
||||
|
||||
protected:
|
||||
ServiceInterfaceBuffer streambuf;
|
||||
|
|
Loading…
Reference in New Issue
Block a user
double include