сделал чтение настроек, удалил пару рудиментов

This commit is contained in:
2024-11-07 13:59:20 +03:00
parent eaee827261
commit 4a293e10f6
7 changed files with 283 additions and 85 deletions

View File

@@ -152,7 +152,7 @@ std::string api_driver::ApiDriver::loadTerminalState() const {
// структура температур девайса
result << ",\n\"device.adrv\":"; writeDouble(result, device.adrv_temp, 1);
result << ",\"device.fpga\":"; writeDouble(result, device.pl_temp, 1);
result << ",\"device.zync\":"; writeDouble(result, device.zynq_temp, 1);
result << ",\"device.zynq\":"; writeDouble(result, device.zynq_temp, 1);
result << "}";
@@ -166,33 +166,7 @@ void api_driver::ApiDriver::resetPacketStatistics() const {
}
std::string api_driver::ApiDriver::loadSettings() const {
/*
param: {
cinc: {
cinc.mode: null, // 'positional' | 'delay'
cinc.searchBandwidth: 0, // полоса поиска в кГц
cinc.position.station.latitude: 0,
cinc.position.station.longitude: 0,
cinc.position.satelliteLongitude: 0,
cinc.delayMin: 0,
cinc.delayMax: 0
},
buc: {
buc.refClk10M: false, // подача опоры 10MHz
buc.powering: 0 // 0, 24, 48
},
lnb: {
lnb.refClk10M: false, // подача опоры 10MHz
lnb.powering: 0 // 0, 13, 18, 24
},
serviceSettings: {
serviceSettings.refClk10M: false, // подача опоры 10MHz
serviceSettings.startDelay: 0, // задержка включения передачи
serviceSettings.autoStart: false
},
},
*/
constexpr auto* UNKNOWN = "\"?\"";
// constexpr auto* UNKNOWN = "\"?\"";
modulator_settings modSettings{};
CP_GetModulatorSettings(sid, modSettings);
@@ -202,19 +176,21 @@ param: {
demodulator_settings demodSettings{};
CP_GetDemodulatorSettings(sid, demodSettings);
ACM_parameters_serv_ acmSettings{};
// CP_GetAcmParams(sid, &acmSettings);
CP_GetAcmParams(sid, &acmSettings);
DPDI_parmeters dpdiSettings{};
// CP_GetDpdiParams(sid, &dpdiSettings);
CP_GetDpdiParams(sid, &dpdiSettings);
buc_lnb_settings bucLnb{};
CP_GetBUC_LNB_settings(sid, bucLnb);
std::stringstream result;
result << "{\n\"general.iscInC\":" << boolAsStr(modSettings.is_cinc);
result << "{\n\"general.isCinC\":" << boolAsStr(modSettings.is_cinc);
result << ",\"general.txEn\":" << boolAsStr(modSettings.tx_is_on);
result << ",\"general.modulatorMode\":" << (modSettings.is_carrier ? "\"normal\"" : "\"test\"");
result << ",\"general.autoStartTx\":" << boolAsStr(modSettings.is_save_current_state);
result << ",\"general.isTestInputData\":" << boolAsStr(modSettings.is_test_data);
result << ",\n\"tx.attenuation\":"; writeDouble(result, modSettings.attenuation);
result << ",\"tx.rolloff\":"; writeDouble(result, modSettings.rollof);
result << ",\"tx.rolloff\":" << static_cast<int>(modSettings.rollof * 100);
result << ",\"tx.cymRate\":" << modSettings.baudrate;
result << ",\"tx.centerFreq\":"; writeDouble(result, modSettings.central_freq_in_kGz, 3);
@@ -224,18 +200,18 @@ param: {
result << ",\"dvbs2.ccm_modcod\":" << (modulatorModcod >> 4);
result << ",\"dvbs2.acm_maxModcod\":" << (acmSettings.max_modcod >> 2);
result << ",\"dvbs2.acm_minModcod\":" << (acmSettings.min_modcod >> 2);
result << ",\"dvbs2.snrReserve\":" << UNKNOWN;
result << ",\"dvbs2.servicePacketPeriod\":" << UNKNOWN;
result << ",\"dvbs2.snrReserve\":"; writeDouble(result, acmSettings.min_attenuation);
result << ",\"dvbs2.servicePacketPeriod\":" << acmSettings.period_pack;
result << ",\n\"acm.en\":" << boolAsStr(acmSettings.enable_auto_atten);
result << ",\"acm.maxAttenuation\":"; writeDouble(result, acmSettings.max_attenuation);
result << ",\"acm.minAttenuation\":"; writeDouble(result, acmSettings.min_attenuation);
result << ",\"acm.requiredSnr\":" << UNKNOWN;
result << ",\"acm.requiredSnr\":"; writeDouble(result, acmSettings.snr_treashold_acm);
result << ",\n\"rx.gainMode\":" << (demodSettings.is_aru_on ? "\"auto\"" : "\"manual\"");
result << ",\"rx.manualGain\":"; writeDouble(result, demodSettings.gain);
result << ",\"rx.spectrumInversion\":" << boolAsStr(demodSettings.is_rvt_iq);
result << ",\"rx.rolloff\":"; writeDouble(result, demodSettings.rollof);
result << ",\"rx.rolloff\":" << static_cast<int>(demodSettings.rollof * 100);
result << ",\"rx.cymRate\":" << demodSettings.baudrate;
result << ",\"rx.centerFreq\":"; writeDouble(result, demodSettings.central_freq_in_kGz);
@@ -247,15 +223,23 @@ param: {
result << ",\"cinc.delayMin\":" << dpdiSettings.min_delay;
result << ",\"cinc.delayMax\":" << dpdiSettings.max_delay;
result << ",\n\"buc.refClk10M\":" << UNKNOWN;
result << ",\"buc.powering\":" << UNKNOWN;
result << ",\n\"buc.refClk10M\":" << boolAsStr(bucLnb.is_ref_10MHz_buc);
switch (bucLnb.buc) {
case voltage_buc::DISABLE: result << ",\"buc.powering\":0"; break;
case voltage_buc::_24V: result << ",\"buc.powering\":24"; break;
case voltage_buc::_48V: result << ",\"buc.powering\":48"; break;
}
result << ",\n\"lnb.refClk10M\":" << UNKNOWN;
result << ",\"lnb.powering\":" << UNKNOWN;
result << ",\n\"lnb.refClk10M\":" << boolAsStr(bucLnb.is_ref_10MHz_lnb);
switch (bucLnb.lnb) {
case voltage_lnb::DISABLE: result << ",\"lnb.powering\":0"; break;
case voltage_lnb::_13V: result << ",\"lnb.powering\":13"; break;
case voltage_lnb::_18V: result << ",\"lnb.powering\":18"; break;
case voltage_lnb::_24V: result << ",\"lnb.powering\":24"; break;
}
result << ",\n\"serviceSettings.refClk10M\":" << UNKNOWN;
result << ",\"serviceSettings.startDelay\":" << UNKNOWN;
result << ",\"serviceSettings.autoStart\":" << UNKNOWN;
result << ",\n\"serviceSettings.refClk10M\":" << boolAsStr(bucLnb.is_ref_10MHz_output);
result << ",\"serviceSettings.autoStart\":" << boolAsStr(bucLnb.is_save_current_state);
result << "}";
return result.str();