Merge branch 'development' into mohr/documentation_ci

This commit is contained in:
Ulrich Mohr 2022-09-30 14:50:20 +02:00
commit d964fa2107
3 changed files with 12 additions and 12 deletions

View File

@ -6,13 +6,14 @@ High-level overview
Structure Structure
---------- ----------
The general structure is driven by the usage of interfaces provided by objects. The general structure is driven by the usage of interfaces provided by objects.
The FSFW uses C++11 as baseline. The intention behind this is that this C++ Standard should be The FSFW uses C++17 as baseline. Most modern compilers like GCC should have support for this
widely available, even with older compilers. standard, even for micocontrollers.
The FSFW uses dynamic allocation during the initialization but provides static containers during runtime.
This simplifies the instantiation of objects and allows the usage of some standard containers. The FSFW might use dynamic allocation during program initialization but not during runtime.
Dynamic Allocation after initialization is discouraged and different solutions are provided in the It offers pool objects, static containers and it also exposes the
FSFW to achieve that. The fsfw uses run-time type information but exceptions are not allowed. `Embedded Template Library <https://www.etlcpp.com/>`_ to allow writing code which does not perform
allocation during runtime. The fsfw uses run-time type information but will not throw exceptions.
Failure Handling Failure Handling
----------------- -----------------

View File

@ -48,12 +48,12 @@ LocalPoolObjectBase::LocalPoolObjectBase(object_id_t poolOwner, lp_id_t poolId,
if (hkOwner == nullptr) { if (hkOwner == nullptr) {
#if FSFW_CPP_OSTREAM_ENABLED == 1 #if FSFW_CPP_OSTREAM_ENABLED == 1
sif::error << "LocalPoolVariable: The supplied pool owner 0x" << std::hex << poolOwner sif::error << "LocalPoolVariable: The supplied pool owner 0x" << std::hex << poolOwner
<< std::dec << " did not implement the correct interface " << std::dec << " does not exist or does not implement the correct interface "
<< "HasLocalDataPoolIF" << std::endl; << "HasLocalDataPoolIF" << std::endl;
#else #else
sif::printError( sif::printError(
"LocalPoolVariable: The supplied pool owner 0x%08x did not implement the correct " "LocalPoolVariable: The supplied pool owner 0x%08x does not exist or does not implement "
"interface HasLocalDataPoolIF\n", "the correct interface HasLocalDataPoolIF\n",
poolOwner); poolOwner);
#endif #endif
return; return;

View File

@ -1,9 +1,8 @@
#ifndef FRAMEWORK_SERVICEINTERFACE_SERVICEINTERFACESTREAM_H_ #ifndef FRAMEWORK_SERVICEINTERFACE_SERVICEINTERFACESTREAM_H_
#define FRAMEWORK_SERVICEINTERFACE_SERVICEINTERFACESTREAM_H_ #define FRAMEWORK_SERVICEINTERFACE_SERVICEINTERFACESTREAM_H_
#include <FSFWConfig.h>
#include "ServiceInterfaceBuffer.h" #include "ServiceInterfaceBuffer.h"
#include "fsfw/FSFW.h"
#if FSFW_CPP_OSTREAM_ENABLED == 1 #if FSFW_CPP_OSTREAM_ENABLED == 1