|
lacteApp
C++17 service for Lacte hardware
|
Хранит последний известный HMI-сигнал двери (единственная величина, которую сегодня физически некому непрерывно поставлять здесь - реальное чтение HMI UART живёт пока только в FramebufferUi.cpp) и вычисляет SystemState по требованию из него и переданного online-статуса платы lacte. More...
#include <SystemState.hpp>
Public Member Functions | |
| void | set_door_signal_lost (const bool lost) |
| Безопасное значение по умолчанию до первого реального HMI-пакета - "дверь закрыта" (см. | |
| auto | door_signal_lost () const -> bool |
| auto | resolve (const bool lacte_online) const noexcept -> SystemState |
Static Public Member Functions | |
| static auto | resolve (const bool lacte_online, const bool door_signal_lost) noexcept -> SystemState |
| Таблица истинности как чистая статическая функция - без единой зависимости от протокола/шины/UART, поэтому тестируется напрямую четырьмя assert'ами (см. | |
Хранит последний известный HMI-сигнал двери (единственная величина, которую сегодня физически некому непрерывно поставлять здесь - реальное чтение HMI UART живёт пока только в FramebufferUi.cpp) и вычисляет SystemState по требованию из него и переданного online-статуса платы lacte.
Namespace-lifetime класс (а не пара свободных функций), специально чтобы быть полем LacteApp (см. LacteApp::m_system_state_) - владелец получает как хранение последнего HMI-сигнала, так и саму таблицу истинности одним объектом.
Definition at line 62 of file SystemState.hpp.
|
inlinenodiscard |
|
inlinenodiscardnoexcept |
|
inlinestaticnodiscardnoexcept |
Таблица истинности как чистая статическая функция - без единой зависимости от протокола/шины/UART, поэтому тестируется напрямую четырьмя assert'ами (см.
LacteApp/tests/UiBusTest.cpp), без дублёра HMI-протокола.
Definition at line 79 of file SystemState.hpp.
|
inline |
Безопасное значение по умолчанию до первого реального HMI-пакета - "дверь закрыта" (см.
таблицу выше: с lacte online это NORMAL, а не DOOR_OPEN - совпадает с уже действующим сегодня поведением FramebufferUi.cpp, где экран включается только явным пакетом с открытой дверью, никогда не включается "по умолчанию").
Definition at line 69 of file SystemState.hpp.