mirror of
https://github.com/f4exb/sdrangel.git
synced 2024-10-02 01:36:38 -04:00
Interferometer: implement gain and phase in API
This commit is contained in:
parent
b6b4eb405f
commit
bab47d41c7
@ -184,6 +184,9 @@ void Interferometer::applySettings(const InterferometerSettings& settings, bool
|
|||||||
if ((m_settings.m_phase != settings.m_phase) || force) {
|
if ((m_settings.m_phase != settings.m_phase) || force) {
|
||||||
reverseAPIKeys.append("phase");
|
reverseAPIKeys.append("phase");
|
||||||
}
|
}
|
||||||
|
if ((m_settings.m_phase != settings.m_gain) || force) {
|
||||||
|
reverseAPIKeys.append("gain");
|
||||||
|
}
|
||||||
if ((m_settings.m_title != settings.m_title) || force) {
|
if ((m_settings.m_title != settings.m_title) || force) {
|
||||||
reverseAPIKeys.append("title");
|
reverseAPIKeys.append("title");
|
||||||
}
|
}
|
||||||
@ -393,6 +396,12 @@ void Interferometer::webapiUpdateChannelSettings(
|
|||||||
if (channelSettingsKeys.contains("log2Decim")) {
|
if (channelSettingsKeys.contains("log2Decim")) {
|
||||||
settings.m_log2Decim = response.getInterferometerSettings()->getLog2Decim();
|
settings.m_log2Decim = response.getInterferometerSettings()->getLog2Decim();
|
||||||
}
|
}
|
||||||
|
if (channelSettingsKeys.contains("phase")) {
|
||||||
|
settings.m_phase = response.getInterferometerSettings()->getPhase();
|
||||||
|
}
|
||||||
|
if (channelSettingsKeys.contains("gain")) {
|
||||||
|
settings.m_gain = response.getInterferometerSettings()->getGain();
|
||||||
|
}
|
||||||
|
|
||||||
if (channelSettingsKeys.contains("filterChainHash"))
|
if (channelSettingsKeys.contains("filterChainHash"))
|
||||||
{
|
{
|
||||||
@ -440,6 +449,8 @@ void Interferometer::webapiFormatChannelSettings(SWGSDRangel::SWGChannelSettings
|
|||||||
}
|
}
|
||||||
|
|
||||||
response.getInterferometerSettings()->setLog2Decim(settings.m_log2Decim);
|
response.getInterferometerSettings()->setLog2Decim(settings.m_log2Decim);
|
||||||
|
response.getInterferometerSettings()->setPhase(settings.m_phase);
|
||||||
|
response.getInterferometerSettings()->setGain(settings.m_gain);
|
||||||
response.getInterferometerSettings()->setFilterChainHash(settings.m_filterChainHash);
|
response.getInterferometerSettings()->setFilterChainHash(settings.m_filterChainHash);
|
||||||
response.getInterferometerSettings()->setUseReverseApi(settings.m_useReverseAPI ? 1 : 0);
|
response.getInterferometerSettings()->setUseReverseApi(settings.m_useReverseAPI ? 1 : 0);
|
||||||
|
|
||||||
@ -585,6 +596,12 @@ void Interferometer::webapiFormatChannelSettings(
|
|||||||
if (channelSettingsKeys.contains("log2Decim") || force) {
|
if (channelSettingsKeys.contains("log2Decim") || force) {
|
||||||
swgInterferometerSettings->setLog2Decim(settings.m_log2Decim);
|
swgInterferometerSettings->setLog2Decim(settings.m_log2Decim);
|
||||||
}
|
}
|
||||||
|
if (channelSettingsKeys.contains("phase") || force) {
|
||||||
|
swgInterferometerSettings->setPhase(settings.m_phase);
|
||||||
|
}
|
||||||
|
if (channelSettingsKeys.contains("gain") || force) {
|
||||||
|
swgInterferometerSettings->setGain(settings.m_gain);
|
||||||
|
}
|
||||||
if (channelSettingsKeys.contains("filterChainHash") || force) {
|
if (channelSettingsKeys.contains("filterChainHash") || force) {
|
||||||
swgInterferometerSettings->setFilterChainHash(settings.m_filterChainHash);
|
swgInterferometerSettings->setFilterChainHash(settings.m_filterChainHash);
|
||||||
}
|
}
|
||||||
|
@ -8501,6 +8501,14 @@ margin-bottom: 20px;
|
|||||||
"filterChainHash" : {
|
"filterChainHash" : {
|
||||||
"type" : "integer"
|
"type" : "integer"
|
||||||
},
|
},
|
||||||
|
"phase" : {
|
||||||
|
"type" : "integer",
|
||||||
|
"description" : "Channel B phase shift in degrees (-180 to 180)"
|
||||||
|
},
|
||||||
|
"gain" : {
|
||||||
|
"type" : "integer",
|
||||||
|
"description" : "Channel B gain in centi-Bels"
|
||||||
|
},
|
||||||
"useReverseAPI" : {
|
"useReverseAPI" : {
|
||||||
"type" : "integer",
|
"type" : "integer",
|
||||||
"description" : "Synchronize with reverse API (1 for yes, 0 for no)"
|
"description" : "Synchronize with reverse API (1 for yes, 0 for no)"
|
||||||
@ -58952,7 +58960,7 @@ except ApiException as e:
|
|||||||
</div>
|
</div>
|
||||||
<div id="generator">
|
<div id="generator">
|
||||||
<div class="content">
|
<div class="content">
|
||||||
Generated 2024-04-07T17:52:28.367+02:00
|
Generated 2024-05-12T00:06:46.949+02:00
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
@ -12,6 +12,12 @@ InterferometerSettings:
|
|||||||
type: integer
|
type: integer
|
||||||
filterChainHash:
|
filterChainHash:
|
||||||
type: integer
|
type: integer
|
||||||
|
phase:
|
||||||
|
description: Channel B phase shift in degrees (-180 to 180)
|
||||||
|
type: integer
|
||||||
|
gain:
|
||||||
|
description: Channel B gain in centi-Bels
|
||||||
|
type: integer
|
||||||
useReverseAPI:
|
useReverseAPI:
|
||||||
description: Synchronize with reverse API (1 for yes, 0 for no)
|
description: Synchronize with reverse API (1 for yes, 0 for no)
|
||||||
type: integer
|
type: integer
|
||||||
|
@ -12,6 +12,12 @@ InterferometerSettings:
|
|||||||
type: integer
|
type: integer
|
||||||
filterChainHash:
|
filterChainHash:
|
||||||
type: integer
|
type: integer
|
||||||
|
phase:
|
||||||
|
description: Channel B phase shift in degrees (-180 to 180)
|
||||||
|
type: integer
|
||||||
|
gain:
|
||||||
|
description: Channel B gain in centi-Bels
|
||||||
|
type: integer
|
||||||
useReverseAPI:
|
useReverseAPI:
|
||||||
description: Synchronize with reverse API (1 for yes, 0 for no)
|
description: Synchronize with reverse API (1 for yes, 0 for no)
|
||||||
type: integer
|
type: integer
|
||||||
|
@ -8501,6 +8501,14 @@ margin-bottom: 20px;
|
|||||||
"filterChainHash" : {
|
"filterChainHash" : {
|
||||||
"type" : "integer"
|
"type" : "integer"
|
||||||
},
|
},
|
||||||
|
"phase" : {
|
||||||
|
"type" : "integer",
|
||||||
|
"description" : "Channel B phase shift in degrees (-180 to 180)"
|
||||||
|
},
|
||||||
|
"gain" : {
|
||||||
|
"type" : "integer",
|
||||||
|
"description" : "Channel B gain in centi-Bels"
|
||||||
|
},
|
||||||
"useReverseAPI" : {
|
"useReverseAPI" : {
|
||||||
"type" : "integer",
|
"type" : "integer",
|
||||||
"description" : "Synchronize with reverse API (1 for yes, 0 for no)"
|
"description" : "Synchronize with reverse API (1 for yes, 0 for no)"
|
||||||
@ -58952,7 +58960,7 @@ except ApiException as e:
|
|||||||
</div>
|
</div>
|
||||||
<div id="generator">
|
<div id="generator">
|
||||||
<div class="content">
|
<div class="content">
|
||||||
Generated 2024-04-07T17:52:28.367+02:00
|
Generated 2024-05-12T00:06:46.949+02:00
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
@ -210,11 +210,11 @@ SWGChannelAnalyzerSettings::fromJson(QString &json) {
|
|||||||
|
|
||||||
void
|
void
|
||||||
SWGChannelAnalyzerSettings::fromJsonObject(QJsonObject &pJson) {
|
SWGChannelAnalyzerSettings::fromJsonObject(QJsonObject &pJson) {
|
||||||
::SWGSDRangel::setValue(&frequency, pJson["inputFrequencyOffset"], "qint32", "");
|
::SWGSDRangel::setValue(&frequency, pJson["frequency"], "qint32", "");
|
||||||
|
|
||||||
::SWGSDRangel::setValue(&down_sample, pJson["rationalDownSample"], "qint32", "");
|
::SWGSDRangel::setValue(&down_sample, pJson["downSample"], "qint32", "");
|
||||||
|
|
||||||
::SWGSDRangel::setValue(&down_sample_rate, pJson["rationalDownSamplerRate"], "qint32", "");
|
::SWGSDRangel::setValue(&down_sample_rate, pJson["downSampleRate"], "qint32", "");
|
||||||
|
|
||||||
::SWGSDRangel::setValue(&bandwidth, pJson["bandwidth"], "qint32", "");
|
::SWGSDRangel::setValue(&bandwidth, pJson["bandwidth"], "qint32", "");
|
||||||
|
|
||||||
@ -285,13 +285,13 @@ QJsonObject*
|
|||||||
SWGChannelAnalyzerSettings::asJsonObject() {
|
SWGChannelAnalyzerSettings::asJsonObject() {
|
||||||
QJsonObject* obj = new QJsonObject();
|
QJsonObject* obj = new QJsonObject();
|
||||||
if(m_frequency_isSet){
|
if(m_frequency_isSet){
|
||||||
obj->insert("inputFrequencyOffset", QJsonValue(frequency));
|
obj->insert("frequency", QJsonValue(frequency));
|
||||||
}
|
}
|
||||||
if(m_down_sample_isSet){
|
if(m_down_sample_isSet){
|
||||||
obj->insert("rationalDownSample", QJsonValue(down_sample));
|
obj->insert("downSample", QJsonValue(down_sample));
|
||||||
}
|
}
|
||||||
if(m_down_sample_rate_isSet){
|
if(m_down_sample_rate_isSet){
|
||||||
obj->insert("rationalDownSamplerRate", QJsonValue(down_sample_rate));
|
obj->insert("downSampleRate", QJsonValue(down_sample_rate));
|
||||||
}
|
}
|
||||||
if(m_bandwidth_isSet){
|
if(m_bandwidth_isSet){
|
||||||
obj->insert("bandwidth", QJsonValue(bandwidth));
|
obj->insert("bandwidth", QJsonValue(bandwidth));
|
||||||
|
@ -38,6 +38,10 @@ SWGInterferometerSettings::SWGInterferometerSettings() {
|
|||||||
m_log2_decim_isSet = false;
|
m_log2_decim_isSet = false;
|
||||||
filter_chain_hash = 0;
|
filter_chain_hash = 0;
|
||||||
m_filter_chain_hash_isSet = false;
|
m_filter_chain_hash_isSet = false;
|
||||||
|
phase = 0;
|
||||||
|
m_phase_isSet = false;
|
||||||
|
gain = 0;
|
||||||
|
m_gain_isSet = false;
|
||||||
use_reverse_api = 0;
|
use_reverse_api = 0;
|
||||||
m_use_reverse_api_isSet = false;
|
m_use_reverse_api_isSet = false;
|
||||||
reverse_api_address = nullptr;
|
reverse_api_address = nullptr;
|
||||||
@ -74,6 +78,10 @@ SWGInterferometerSettings::init() {
|
|||||||
m_log2_decim_isSet = false;
|
m_log2_decim_isSet = false;
|
||||||
filter_chain_hash = 0;
|
filter_chain_hash = 0;
|
||||||
m_filter_chain_hash_isSet = false;
|
m_filter_chain_hash_isSet = false;
|
||||||
|
phase = 0;
|
||||||
|
m_phase_isSet = false;
|
||||||
|
gain = 0;
|
||||||
|
m_gain_isSet = false;
|
||||||
use_reverse_api = 0;
|
use_reverse_api = 0;
|
||||||
m_use_reverse_api_isSet = false;
|
m_use_reverse_api_isSet = false;
|
||||||
reverse_api_address = new QString("");
|
reverse_api_address = new QString("");
|
||||||
@ -104,6 +112,8 @@ SWGInterferometerSettings::cleanup() {
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
if(reverse_api_address != nullptr) {
|
if(reverse_api_address != nullptr) {
|
||||||
delete reverse_api_address;
|
delete reverse_api_address;
|
||||||
}
|
}
|
||||||
@ -145,6 +155,10 @@ SWGInterferometerSettings::fromJsonObject(QJsonObject &pJson) {
|
|||||||
|
|
||||||
::SWGSDRangel::setValue(&filter_chain_hash, pJson["filterChainHash"], "qint32", "");
|
::SWGSDRangel::setValue(&filter_chain_hash, pJson["filterChainHash"], "qint32", "");
|
||||||
|
|
||||||
|
::SWGSDRangel::setValue(&phase, pJson["phase"], "qint32", "");
|
||||||
|
|
||||||
|
::SWGSDRangel::setValue(&gain, pJson["gain"], "qint32", "");
|
||||||
|
|
||||||
::SWGSDRangel::setValue(&use_reverse_api, pJson["useReverseAPI"], "qint32", "");
|
::SWGSDRangel::setValue(&use_reverse_api, pJson["useReverseAPI"], "qint32", "");
|
||||||
|
|
||||||
::SWGSDRangel::setValue(&reverse_api_address, pJson["reverseAPIAddress"], "QString", "QString");
|
::SWGSDRangel::setValue(&reverse_api_address, pJson["reverseAPIAddress"], "QString", "QString");
|
||||||
@ -194,6 +208,12 @@ SWGInterferometerSettings::asJsonObject() {
|
|||||||
if(m_filter_chain_hash_isSet){
|
if(m_filter_chain_hash_isSet){
|
||||||
obj->insert("filterChainHash", QJsonValue(filter_chain_hash));
|
obj->insert("filterChainHash", QJsonValue(filter_chain_hash));
|
||||||
}
|
}
|
||||||
|
if(m_phase_isSet){
|
||||||
|
obj->insert("phase", QJsonValue(phase));
|
||||||
|
}
|
||||||
|
if(m_gain_isSet){
|
||||||
|
obj->insert("gain", QJsonValue(gain));
|
||||||
|
}
|
||||||
if(m_use_reverse_api_isSet){
|
if(m_use_reverse_api_isSet){
|
||||||
obj->insert("useReverseAPI", QJsonValue(use_reverse_api));
|
obj->insert("useReverseAPI", QJsonValue(use_reverse_api));
|
||||||
}
|
}
|
||||||
@ -275,6 +295,26 @@ SWGInterferometerSettings::setFilterChainHash(qint32 filter_chain_hash) {
|
|||||||
this->m_filter_chain_hash_isSet = true;
|
this->m_filter_chain_hash_isSet = true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
qint32
|
||||||
|
SWGInterferometerSettings::getPhase() {
|
||||||
|
return phase;
|
||||||
|
}
|
||||||
|
void
|
||||||
|
SWGInterferometerSettings::setPhase(qint32 phase) {
|
||||||
|
this->phase = phase;
|
||||||
|
this->m_phase_isSet = true;
|
||||||
|
}
|
||||||
|
|
||||||
|
qint32
|
||||||
|
SWGInterferometerSettings::getGain() {
|
||||||
|
return gain;
|
||||||
|
}
|
||||||
|
void
|
||||||
|
SWGInterferometerSettings::setGain(qint32 gain) {
|
||||||
|
this->gain = gain;
|
||||||
|
this->m_gain_isSet = true;
|
||||||
|
}
|
||||||
|
|
||||||
qint32
|
qint32
|
||||||
SWGInterferometerSettings::getUseReverseApi() {
|
SWGInterferometerSettings::getUseReverseApi() {
|
||||||
return use_reverse_api;
|
return use_reverse_api;
|
||||||
@ -385,6 +425,12 @@ SWGInterferometerSettings::isSet(){
|
|||||||
if(m_filter_chain_hash_isSet){
|
if(m_filter_chain_hash_isSet){
|
||||||
isObjectUpdated = true; break;
|
isObjectUpdated = true; break;
|
||||||
}
|
}
|
||||||
|
if(m_phase_isSet){
|
||||||
|
isObjectUpdated = true; break;
|
||||||
|
}
|
||||||
|
if(m_gain_isSet){
|
||||||
|
isObjectUpdated = true; break;
|
||||||
|
}
|
||||||
if(m_use_reverse_api_isSet){
|
if(m_use_reverse_api_isSet){
|
||||||
isObjectUpdated = true; break;
|
isObjectUpdated = true; break;
|
||||||
}
|
}
|
||||||
|
@ -61,6 +61,12 @@ public:
|
|||||||
qint32 getFilterChainHash();
|
qint32 getFilterChainHash();
|
||||||
void setFilterChainHash(qint32 filter_chain_hash);
|
void setFilterChainHash(qint32 filter_chain_hash);
|
||||||
|
|
||||||
|
qint32 getPhase();
|
||||||
|
void setPhase(qint32 phase);
|
||||||
|
|
||||||
|
qint32 getGain();
|
||||||
|
void setGain(qint32 gain);
|
||||||
|
|
||||||
qint32 getUseReverseApi();
|
qint32 getUseReverseApi();
|
||||||
void setUseReverseApi(qint32 use_reverse_api);
|
void setUseReverseApi(qint32 use_reverse_api);
|
||||||
|
|
||||||
@ -107,6 +113,12 @@ private:
|
|||||||
qint32 filter_chain_hash;
|
qint32 filter_chain_hash;
|
||||||
bool m_filter_chain_hash_isSet;
|
bool m_filter_chain_hash_isSet;
|
||||||
|
|
||||||
|
qint32 phase;
|
||||||
|
bool m_phase_isSet;
|
||||||
|
|
||||||
|
qint32 gain;
|
||||||
|
bool m_gain_isSet;
|
||||||
|
|
||||||
qint32 use_reverse_api;
|
qint32 use_reverse_api;
|
||||||
bool m_use_reverse_api_isSet;
|
bool m_use_reverse_api_isSet;
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user