2015-07-10 06:01:56 -07:00
|
|
|
/**
|
|
|
|
* @file fsio_impl.h
|
|
|
|
* @brief FSIO as it's used for GPIO
|
|
|
|
*
|
|
|
|
* @date Oct 5, 2014
|
2020-01-07 21:02:40 -08:00
|
|
|
* @author Andrey Belomutskiy, (c) 2012-2020
|
2015-07-10 06:01:56 -07:00
|
|
|
*/
|
|
|
|
|
2019-12-15 20:33:15 -08:00
|
|
|
#pragma once
|
2015-07-10 06:01:56 -07:00
|
|
|
|
|
|
|
#include "fsio_core.h"
|
2020-10-06 19:33:00 -07:00
|
|
|
#include "expected.h"
|
2017-01-19 14:04:15 -08:00
|
|
|
#include "system_fsio.h"
|
2016-04-04 07:01:43 -07:00
|
|
|
|
2020-07-01 17:45:37 -07:00
|
|
|
// see useFSIO4ForSeriousEngineWarning
|
|
|
|
#define MAGIC_OFFSET_FOR_ENGINE_WARNING 4
|
|
|
|
// see useFSIO5ForCriticalIssueEngineStop
|
|
|
|
#define MAGIC_OFFSET_FOR_CRITICAL_ENGINE 5
|
2019-09-12 04:31:13 -07:00
|
|
|
|
2021-11-14 07:39:47 -08:00
|
|
|
typedef Map3D<SCRIPT_TABLE__8, SCRIPT_TABLE__8, float, float, float> fsio8_Map3D_f32t;
|
|
|
|
typedef Map3D<SCRIPT_TABLE__8, SCRIPT_TABLE__8, uint8_t, float, float> fsio8_Map3D_u8t;
|
2015-07-10 06:01:56 -07:00
|
|
|
|
2020-10-06 19:33:00 -07:00
|
|
|
expected<float> getEngineValue(le_action_e action DECLARE_ENGINE_PARAMETER_SUFFIX);
|
2015-07-10 06:01:56 -07:00
|
|
|
|
2021-04-21 11:28:48 -07:00
|
|
|
void initFsioImpl(DECLARE_ENGINE_PARAMETER_SIGNATURE);
|
2017-12-16 21:03:26 -08:00
|
|
|
void runFsio(DECLARE_ENGINE_PARAMETER_SIGNATURE);
|
2021-11-14 05:33:19 -08:00
|
|
|
|
2018-02-03 08:42:50 -08:00
|
|
|
void onConfigurationChangeFsioCallback(engine_configuration_s *previousConfiguration DECLARE_ENGINE_PARAMETER_SUFFIX);
|
2019-11-25 17:08:01 -08:00
|
|
|
void runHardcodedFsio(DECLARE_ENGINE_PARAMETER_SIGNATURE);
|
2015-07-10 06:01:56 -07:00
|
|
|
|
2021-11-04 20:59:04 -07:00
|
|
|
float getCurveValue(int index, float key DECLARE_ENGINE_PARAMETER_SUFFIX);
|
2021-11-05 12:25:29 -07:00
|
|
|
int getCurveIndexByName(const char *name DECLARE_ENGINE_PARAMETER_SUFFIX);
|
2021-11-13 07:02:01 -08:00
|
|
|
int getTableIndexByName(const char *name DECLARE_ENGINE_PARAMETER_SUFFIX);
|
2021-11-14 07:39:47 -08:00
|
|
|
ValueProvider3D *getscriptTable(int index);
|
2019-07-12 05:31:38 -07:00
|
|
|
|