This commit is contained in:
cfif 2025-06-02 13:26:40 +03:00
commit 9a0c34e9f9
3 changed files with 96 additions and 0 deletions

49
DataRuntime.c Normal file
View File

@ -0,0 +1,49 @@
//
// Created by xemon on 19.12.22.
//
#include "DataRuntime.h"
//#include "FirmwareMetadataSection.h"
#include "FirmwareUveosMetadataSection.h"
void DeviceDataRuntime_InitDefaults(tDeviceDataRuntime *env) {
env->enableGnssUpdate = true;
env->EGTS_FLEET_ON = false;
env->disallowWrite = 0;
env->telematicaServerIsActive = false;
env->telematicaCloseConnect = false;
env->telematicaWaitConnect = false;
}
#define ADD_VAR_SIZE(TYPE, NAME, VALUE, LEN, GROUP) \
VariablesTableAdd( \
variablesTable, \
#NAME, \
sizeof (#NAME)-1, \
VARIABLE_TYPE_##TYPE, \
(VALUE), \
(LEN), \
0, \
GROUP \
)
#define ADD_VAR(TYPE, NAME, VALUE) ADD_VAR_SIZE(TYPE, NAME, VALUE, 0, VARIABLES_GROUP)
#define ADD_VAR_STR_OBJ(TYPE, NAME, VALUE) ADD_VAR_SIZE(TYPE, NAME, &(VALUE).data, &(VALUE).length,VARIABLES_GROUP)
// Добавление переменных в таблицу
void DeviceDataRuntime_AddToVarTab(
tDeviceDataRuntime *env,
tVariablesTable *variablesTable,
uint32_t VARIABLES_GROUP
) {
ADD_VAR(BOOL, ENABLE_GNSS_UPDATE, &env->enableGnssUpdate);
ADD_VAR(BOOL, EGTS_FLEET_ON, &env->EGTS_FLEET_ON);
ADD_VAR(BOOL, TELEMATICA_SERVER_IS_ACTIVE, &env->telematicaServerIsActive);
ADD_VAR_SIZE(STRING, DEV_VERSION, (void *) META_FW_NAME, (void *) &META_FW_NAME_SIZE, VARIABLES_GROUP);
VariablesTable_GetLast(variablesTable)->writeAttempts = &env->disallowWrite;
}
#undef ADD_VAR_SIZE
#undef ADD_VAR
#undef ADD_VAR_STR_OBJ

30
DataRuntime.h Normal file
View File

@ -0,0 +1,30 @@
//
// Created by zemon on 20.02.24.
//
#ifndef HEAVY_TERMINAL_DEVICEDATARUNTIME_H
#define HEAVY_TERMINAL_DEVICEDATARUNTIME_H
#include <BaseTypes.h>
#include <stdbool.h>
#include <VariablesTable.h>
#include <CarFlipDetection.h>
typedef struct {
bool enableGnssUpdate;
bool EGTS_FLEET_ON; // Флаг включения функции мониторинга
bool telematicaServerIsActive;
bool telematicaCloseConnect;
bool telematicaWaitConnect;
uint16_t disallowWrite;
tCarFlipDetectionSettings flip;
} tDeviceDataRuntime;
void DeviceDataRuntime_InitDefaults(tDeviceDataRuntime *env);
void DeviceDataRuntime_AddToVarTab(
tDeviceDataRuntime *env,
tVariablesTable *variablesTable,
uint32_t VARIABLES_GROUP
);
#endif //HEAVY_TERMINAL_DEVICEDATARUNTIME_H

17
modular.json Normal file
View File

@ -0,0 +1,17 @@
{
"dep": [
{
"type": "git",
"provider": "Smart_Components_Aurus",
"repo": "VariablesTable"
}
],
"cmake": {
"inc_dirs": [
"./"
],
"srcs": [
"./**.c"
]
}
}