Add exponential fog controllable with keyboard and MARSH parameter

This commit is contained in:
Marek S. Łukasiewicz 2026-01-15 16:39:54 +01:00
parent aaef0b0475
commit c1c3be7e85
8 changed files with 78 additions and 7 deletions

View file

@ -51,6 +51,10 @@ public:
// Get normalized trim position
Vector4 get_trim();
// Get current fog density as set in the parameter
float get_fog_density();
void set_fog_density(float value);
// Is there a connection to MARSH Manager
bool get_manager_connected();
// Is receiving data from flight model
@ -94,7 +98,7 @@ private:
// Not an enum class on purpose, to make use more convenient, it's scoped
// inside the class namespace anyway
enum Parameter : uint16_t {
// FOG_DENSITY,
FOG_DENSITY,
NAV_OFS_HDG,
NAV_OFS_X,
NAV_OFS_Y,
@ -102,11 +106,10 @@ private:
LOCAL_FRAME_LON,
PARAM_COUNT,
};
float parameters[PARAM_COUNT] = {0.0, 0.0, 0.0, 0.0, 0.0};
float parameters[PARAM_COUNT] = {0.0, 0.0, 0.0, 0.0, 0.0, 0.0};
const String parameter_names[PARAM_COUNT] = {
// "FOG_DENSITY",
"NAV_OFS_HDG", "NAV_OFS_X", "NAV_OFS_Y",
"LOCAL_FRAME_LAT", "LOCAL_FRAME_LON",
"FOG_DENSITY", "NAV_OFS_HDG", "NAV_OFS_X",
"NAV_OFS_Y", "LOCAL_FRAME_LAT", "LOCAL_FRAME_LON",
};
Error send_param(Parameter index);
Error subscribe_message(uint8_t manager_system, uint8_t manager_component,