Configuring the FSFW ===================== The FSFW can be configured via the ``fsfwconfig`` folder. A template folder has been provided in ``misc/defaultcfg`` to have a starting point for this. The folder should be added to the include path. The primary configuration file is the ``FSFWConfig.h`` folder. Some of the available options will be explained in more detail here. Auto-Translation of Events ---------------------------- The FSFW allows the automatic translation of events, which allows developers to track triggered events directly via console output. Using this feature requires: 1. ``FSFW_OBJ_EVENT_TRANSLATION`` set to 1 in the configuration file. 2. Special auto-generated translation files which translate event IDs and object IDs into human readable strings. These files can be generated using the `fsfwgen Python scripts <https://egit.irs.uni-stuttgart.de/fsfw/fsfw-gen>`_. 3. The generated translation files for the object IDs should be named ``translatesObjects.cpp`` and ``translateObjects.h`` and should be copied to the ``fsfwconfig/objects`` folder 4. The generated translation files for the event IDs should be named ``translateEvents.cpp`` and ``translateEvents.h`` and should be copied to the ``fsfwconfig/events`` folder An example implementations of these translation file generators can be found as part of the `SOURCE project here <https://git.ksat-stuttgart.de/source/sourceobsw/-/tree/develop/generators>`_ or the `FSFW example <https://egit.irs.uni-stuttgart.de/fsfw/fsfw-example-hosted/src/branch/master/generators>`_ Configuring the Event Manager ---------------------------------- The number of allowed subscriptions can be modified with the following parameters: .. code-block:: cpp namespace fsfwconfig { //! Configure the allocated pool sizes for the event manager. static constexpr size_t FSFW_EVENTMGMR_MATCHTREE_NODES = 240; static constexpr size_t FSFW_EVENTMGMT_EVENTIDMATCHERS = 120; static constexpr size_t FSFW_EVENTMGMR_RANGEMATCHERS = 120; }