102 lines
5.6 KiB
C
102 lines
5.6 KiB
C
//
|
||
// Created by xemon on 19.12.22.
|
||
//
|
||
|
||
#include "DeviceDataNonVolatilePrivate.h"
|
||
#include "UveosGostSettings_AddToVarsTab.h"
|
||
|
||
#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, group)
|
||
#define ADD_VAR_STR_OBJ(TYPE, NAME, VALUE) ADD_VAR_SIZE(TYPE, NAME, &(VALUE).data, &(VALUE).length,group)
|
||
|
||
// Добавление переменных в таблицу
|
||
void DeviceDataNonVolatile_AddToVarTab(
|
||
tDeviceDataNonVolatile *env,
|
||
tVariablesTable *variablesTable,
|
||
uint32_t group
|
||
) {
|
||
//Uveos Gost Settings
|
||
UveosGostSettings_AddToVarsTab(&env->gost, variablesTable, group);
|
||
|
||
//Flip detection parameters
|
||
ADD_VAR(FLOAT32, FLIP_DETECT_GRAVITY_X, &env->flip.gravity.x);
|
||
ADD_VAR(FLOAT32, FLIP_DETECT_GRAVITY_Y, &env->flip.gravity.y);
|
||
ADD_VAR(FLOAT32, FLIP_DETECT_GRAVITY_Z, &env->flip.gravity.z);
|
||
|
||
ADD_VAR(BOOL, FLIP_DETECT_ENABLE, &env->flip.enabled);
|
||
ADD_VAR(FLOAT32, FLIP_DETECT_TRESHOLD_ANGLE_COS, &env->flip.thresholds.angleCos);
|
||
ADD_VAR(UINT32, FLIP_DETECT_TRESHOLD_ANTIFLIGHT, &env->flip.thresholds.antiFlightMs);
|
||
|
||
//Devices
|
||
ADD_VAR_STR_OBJ(STRING, DEVICE_ID, env->device.serialNumber.value);
|
||
VariablesTable_GetLast(variablesTable)->writeAttempts = &env->device.serialNumber.writeAccess;
|
||
|
||
ADD_VAR(BOOL, USE_INTERNAL_ANT, &env->device.useInternalAnt);
|
||
ADD_VAR(BOOL, USE_MUTE_POSITIVE, &env->device.useMutePositive);
|
||
ADD_VAR_STR_OBJ(STRING, SMS_CENTER, env->device.smsServiceCenter);
|
||
|
||
ADD_VAR_STR_OBJ(STRING, SOFTWARE_VERS, env->device.softVers);
|
||
VariablesTable_GetLast(variablesTable)->writeAttempts = &env->device.disallowWrite;
|
||
ADD_VAR_STR_OBJ(STRING, HARDWARE_VERS, env->device.hardVers);
|
||
VariablesTable_GetLast(variablesTable)->writeAttempts = &env->device.disallowWrite;
|
||
|
||
ADD_VAR_STR_OBJ(STRING, GSM_CCID, env->device.ccid);
|
||
VariablesTable_GetLast(variablesTable)->writeAttempts = &env->device.disallowWrite;
|
||
ADD_VAR_STR_OBJ(STRING, GSM_CGSN, env->device.cgsmid);
|
||
VariablesTable_GetLast(variablesTable)->writeAttempts = &env->device.disallowWrite;
|
||
|
||
ADD_VAR_STR_OBJ(STRING, CODEC_CONF, env->device.codecConf);
|
||
|
||
|
||
#ifdef UVEOS_ADD_TELEMATICA
|
||
//Telematic
|
||
ADD_VAR_STR_OBJ(STRING, EGTS_PROFILE_SIM_ERA, env->deviceTeledataStorageData.telematica.EGTS_PROFILE_SIM_ERA);
|
||
ADD_VAR_STR_OBJ(STRING, EGTS_PROFILE_SIM_INTERNET, env->deviceTeledataStorageData.telematica.EGTS_PROFILE_SIM_INTERNET);
|
||
|
||
// Адрес:порт сервера №1
|
||
ADD_VAR_STR_OBJ(STRING, EGTS_SERVER_ADDRESS, env->deviceTeledataStorageData.telematica.EGTS_SERVER_ADDRESS);
|
||
ADD_VAR_STR_OBJ(STRING, EGTS_GPRS_APN, env->deviceTeledataStorageData.telematica.EGTS_GPRS_APN);
|
||
|
||
// Включение телематики
|
||
ADD_VAR(BOOL, TELEMATICA_IS_ACTIVE, &env->deviceTeledataStorageData.telematica.telematicaIsActive);
|
||
|
||
// идентификационный номер терминала
|
||
ADD_VAR(UINT32, EGTS_UNIT_ID, &env->deviceTeledataStorageData.telematica.EGTS_UNIT_ID);
|
||
|
||
// Время между попытками установить соединение с сервером (сек)
|
||
ADD_VAR(UINT32, EGTS_SERVER_CHECK_IN_PERIOD, &env->deviceTeledataStorageData.telematica.EGTS_SERVER_CHECK_IN_PERIOD);
|
||
// Количество попыток соединения с сервером
|
||
ADD_VAR(UINT32, EGTS_SERVER_CHECK_IN_ATTEMPTS, &env->deviceTeledataStorageData.telematica.EGTS_SERVER_CHECK_IN_ATTEMPTS);
|
||
// Время ожидания ответа от сервера (сек)
|
||
ADD_VAR(UINT32, EGTS_SERVER_PACKET_TOUT, &env->deviceTeledataStorageData.telematica.EGTS_SERVER_PACKET_TOUT);
|
||
// Количество попыток отправки неподтвержденного пакета на сервер
|
||
ADD_VAR(UINT32, EGTS_SERVER_PACKET_RETRANSMIT_ATTEMPTS,
|
||
&env->deviceTeledataStorageData.telematica.EGTS_SERVER_PACKET_RETRANSMIT_ATTEMPTS);
|
||
|
||
// Таймер передачи данных при включенном зажигании (сек)
|
||
ADD_VAR(UINT32, EGTS_FLEET_IGN_ON_PERIOD, &env->deviceTeledataStorageData.telematica.EGTS_FLEET_IGN_ON_PERIOD);
|
||
// Таймер передачи данных при выключенном зажигании (сек)
|
||
ADD_VAR(UINT32, EGTS_FLEET_IGN_OFF_PERIOD, &env->deviceTeledataStorageData.telematica.EGTS_FLEET_IGN_OFF_PERIOD);
|
||
// Таймер передачи данных при экстренном слежении (сек)
|
||
ADD_VAR(UINT32, EGTS_FLEET_EM_MON_PERIOD, &env->deviceTeledataStorageData.telematica.EGTS_FLEET_EM_MON_PERIOD);
|
||
|
||
// Изменение курсового угла после которого нужно послать данные (градусы)
|
||
ADD_VAR(UINT32, EGTS_FLEET_COURSE_THRESHOLD, &env->deviceTeledataStorageData.telematica.EGTS_FLEET_COURSE_THRESHOLD);
|
||
#endif
|
||
|
||
}
|
||
|
||
#undef ADD_VAR_SIZE
|
||
#undef ADD_VAR
|
||
#undef ADD_VAR_STR_OBJ |