SDRAngel  4.11.5
Developer docs for <a href="https://github.com/f4exb/sdrangel">SDRangel<\a>, an Open Source Qt5 / OpenGL 3.0+ SDR and signal analyzer frontend to various hardware.
SWGBladeRF2OutputSettings.cpp
Go to the documentation of this file.
1 
15 
16 #include "SWGHelpers.h"
17 
18 #include <QJsonDocument>
19 #include <QJsonArray>
20 #include <QObject>
21 #include <QDebug>
22 
23 namespace SWGSDRangel {
24 
26  init();
27  this->fromJson(*json);
28 }
29 
31  center_frequency = 0L;
33  l_oppm_tenths = 0;
34  m_l_oppm_tenths_isSet = false;
35  dev_sample_rate = 0;
37  bandwidth = 0;
38  m_bandwidth_isSet = false;
39  global_gain = 0;
40  m_global_gain_isSet = false;
41  bias_tee = 0;
42  m_bias_tee_isSet = false;
43  log2_interp = 0;
44  m_log2_interp_isSet = false;
45  transverter_mode = 0;
49  use_reverse_api = 0;
51  reverse_api_address = nullptr;
53  reverse_api_port = 0;
57 }
58 
60  this->cleanup();
61 }
62 
63 void
65  center_frequency = 0L;
67  l_oppm_tenths = 0;
68  m_l_oppm_tenths_isSet = false;
69  dev_sample_rate = 0;
71  bandwidth = 0;
72  m_bandwidth_isSet = false;
73  global_gain = 0;
74  m_global_gain_isSet = false;
75  bias_tee = 0;
76  m_bias_tee_isSet = false;
77  log2_interp = 0;
78  m_log2_interp_isSet = false;
79  transverter_mode = 0;
83  use_reverse_api = 0;
85  reverse_api_address = new QString("");
87  reverse_api_port = 0;
91 }
92 
93 void
95 
96 
97 
98 
99 
100 
101 
102 
103 
104 
105  if(reverse_api_address != nullptr) {
106  delete reverse_api_address;
107  }
108 
109 
110 }
111 
114  QByteArray array (json.toStdString().c_str());
115  QJsonDocument doc = QJsonDocument::fromJson(array);
116  QJsonObject jsonObject = doc.object();
117  this->fromJsonObject(jsonObject);
118  return this;
119 }
120 
121 void
123  ::SWGSDRangel::setValue(&center_frequency, pJson["centerFrequency"], "qint64", "");
124 
125  ::SWGSDRangel::setValue(&l_oppm_tenths, pJson["LOppmTenths"], "qint32", "");
126 
127  ::SWGSDRangel::setValue(&dev_sample_rate, pJson["devSampleRate"], "qint32", "");
128 
129  ::SWGSDRangel::setValue(&bandwidth, pJson["bandwidth"], "qint32", "");
130 
131  ::SWGSDRangel::setValue(&global_gain, pJson["globalGain"], "qint32", "");
132 
133  ::SWGSDRangel::setValue(&bias_tee, pJson["biasTee"], "qint32", "");
134 
135  ::SWGSDRangel::setValue(&log2_interp, pJson["log2Interp"], "qint32", "");
136 
137  ::SWGSDRangel::setValue(&transverter_mode, pJson["transverterMode"], "qint32", "");
138 
139  ::SWGSDRangel::setValue(&transverter_delta_frequency, pJson["transverterDeltaFrequency"], "qint64", "");
140 
141  ::SWGSDRangel::setValue(&use_reverse_api, pJson["useReverseAPI"], "qint32", "");
142 
143  ::SWGSDRangel::setValue(&reverse_api_address, pJson["reverseAPIAddress"], "QString", "QString");
144 
145  ::SWGSDRangel::setValue(&reverse_api_port, pJson["reverseAPIPort"], "qint32", "");
146 
147  ::SWGSDRangel::setValue(&reverse_api_device_index, pJson["reverseAPIDeviceIndex"], "qint32", "");
148 
149 }
150 
151 QString
153 {
154  QJsonObject* obj = this->asJsonObject();
155 
156  QJsonDocument doc(*obj);
157  QByteArray bytes = doc.toJson();
158  delete obj;
159  return QString(bytes);
160 }
161 
162 QJsonObject*
164  QJsonObject* obj = new QJsonObject();
166  obj->insert("centerFrequency", QJsonValue(center_frequency));
167  }
169  obj->insert("LOppmTenths", QJsonValue(l_oppm_tenths));
170  }
172  obj->insert("devSampleRate", QJsonValue(dev_sample_rate));
173  }
174  if(m_bandwidth_isSet){
175  obj->insert("bandwidth", QJsonValue(bandwidth));
176  }
178  obj->insert("globalGain", QJsonValue(global_gain));
179  }
180  if(m_bias_tee_isSet){
181  obj->insert("biasTee", QJsonValue(bias_tee));
182  }
184  obj->insert("log2Interp", QJsonValue(log2_interp));
185  }
187  obj->insert("transverterMode", QJsonValue(transverter_mode));
188  }
190  obj->insert("transverterDeltaFrequency", QJsonValue(transverter_delta_frequency));
191  }
193  obj->insert("useReverseAPI", QJsonValue(use_reverse_api));
194  }
195  if(reverse_api_address != nullptr && *reverse_api_address != QString("")){
196  toJsonValue(QString("reverseAPIAddress"), reverse_api_address, obj, QString("QString"));
197  }
199  obj->insert("reverseAPIPort", QJsonValue(reverse_api_port));
200  }
202  obj->insert("reverseAPIDeviceIndex", QJsonValue(reverse_api_device_index));
203  }
204 
205  return obj;
206 }
207 
208 qint64
210  return center_frequency;
211 }
212 void
214  this->center_frequency = center_frequency;
215  this->m_center_frequency_isSet = true;
216 }
217 
218 qint32
220  return l_oppm_tenths;
221 }
222 void
224  this->l_oppm_tenths = l_oppm_tenths;
225  this->m_l_oppm_tenths_isSet = true;
226 }
227 
228 qint32
230  return dev_sample_rate;
231 }
232 void
234  this->dev_sample_rate = dev_sample_rate;
235  this->m_dev_sample_rate_isSet = true;
236 }
237 
238 qint32
240  return bandwidth;
241 }
242 void
244  this->bandwidth = bandwidth;
245  this->m_bandwidth_isSet = true;
246 }
247 
248 qint32
250  return global_gain;
251 }
252 void
254  this->global_gain = global_gain;
255  this->m_global_gain_isSet = true;
256 }
257 
258 qint32
260  return bias_tee;
261 }
262 void
264  this->bias_tee = bias_tee;
265  this->m_bias_tee_isSet = true;
266 }
267 
268 qint32
270  return log2_interp;
271 }
272 void
274  this->log2_interp = log2_interp;
275  this->m_log2_interp_isSet = true;
276 }
277 
278 qint32
280  return transverter_mode;
281 }
282 void
284  this->transverter_mode = transverter_mode;
285  this->m_transverter_mode_isSet = true;
286 }
287 
288 qint64
291 }
292 void
294  this->transverter_delta_frequency = transverter_delta_frequency;
296 }
297 
298 qint32
300  return use_reverse_api;
301 }
302 void
304  this->use_reverse_api = use_reverse_api;
305  this->m_use_reverse_api_isSet = true;
306 }
307 
308 QString*
310  return reverse_api_address;
311 }
312 void
314  this->reverse_api_address = reverse_api_address;
315  this->m_reverse_api_address_isSet = true;
316 }
317 
318 qint32
320  return reverse_api_port;
321 }
322 void
324  this->reverse_api_port = reverse_api_port;
325  this->m_reverse_api_port_isSet = true;
326 }
327 
328 qint32
331 }
332 void
334  this->reverse_api_device_index = reverse_api_device_index;
336 }
337 
338 
339 bool
341  bool isObjectUpdated = false;
342  do{
343  if(m_center_frequency_isSet){ isObjectUpdated = true; break;}
344  if(m_l_oppm_tenths_isSet){ isObjectUpdated = true; break;}
345  if(m_dev_sample_rate_isSet){ isObjectUpdated = true; break;}
346  if(m_bandwidth_isSet){ isObjectUpdated = true; break;}
347  if(m_global_gain_isSet){ isObjectUpdated = true; break;}
348  if(m_bias_tee_isSet){ isObjectUpdated = true; break;}
349  if(m_log2_interp_isSet){ isObjectUpdated = true; break;}
350  if(m_transverter_mode_isSet){ isObjectUpdated = true; break;}
351  if(m_transverter_delta_frequency_isSet){ isObjectUpdated = true; break;}
352  if(m_use_reverse_api_isSet){ isObjectUpdated = true; break;}
353  if(reverse_api_address != nullptr && *reverse_api_address != QString("")){ isObjectUpdated = true; break;}
354  if(m_reverse_api_port_isSet){ isObjectUpdated = true; break;}
355  if(m_reverse_api_device_index_isSet){ isObjectUpdated = true; break;}
356  }while(false);
357  return isObjectUpdated;
358 }
359 }
360 
void toJsonValue(QString name, void *value, QJsonObject *output, QString type)
Definition: SWGHelpers.cpp:383
virtual QJsonObject * asJsonObject() override
virtual SWGBladeRF2OutputSettings * fromJson(QString &jsonString) override
void setReverseApiAddress(QString *reverse_api_address)
void setReverseApiDeviceIndex(qint32 reverse_api_device_index)
void setValue(void *value, QJsonValue obj, QString type, QString complexType)
Definition: SWGHelpers.cpp:25
void setTransverterDeltaFrequency(qint64 transverter_delta_frequency)
virtual void fromJsonObject(QJsonObject &json) override