mirror of
https://github.com/f4exb/sdrangel.git
synced 2025-06-14 12:32:27 -04:00
Compare commits
8 Commits
35088962fe
...
51b540cf72
Author | SHA1 | Date | |
---|---|---|---|
|
51b540cf72 | ||
|
70d090101a | ||
|
d3584f6af2 | ||
|
c5efd73f6b | ||
|
4510f40729 | ||
|
56bd20d59b | ||
|
a4269dcd78 | ||
|
9f661aee30 |
@ -5935,9 +5935,6 @@ void ADSBDemodGUI::applyImportSettings()
|
||||
void ADSBDemodGUI::import()
|
||||
{
|
||||
QString urlString = "https://";
|
||||
if (!m_settings.m_importUsername.isEmpty() && !m_settings.m_importPassword.isEmpty()) {
|
||||
urlString = urlString + m_settings.m_importUsername + ":" + m_settings.m_importPassword + "@";
|
||||
}
|
||||
urlString = urlString + m_settings.m_importHost + "/api/states/all";
|
||||
QChar join = '?';
|
||||
if (!m_settings.m_importParameters.isEmpty())
|
||||
@ -5965,7 +5962,13 @@ void ADSBDemodGUI::import()
|
||||
urlString = urlString + join + "lomax=" + m_settings.m_importMaxLongitude;
|
||||
join = '&';
|
||||
}
|
||||
m_networkManager->get(QNetworkRequest(QUrl(urlString)));
|
||||
QNetworkRequest request = QNetworkRequest(QUrl(urlString));
|
||||
if (!m_settings.m_importUsername.isEmpty() && !m_settings.m_importPassword.isEmpty())
|
||||
{
|
||||
QByteArray encoded = (m_settings.m_importUsername + ":" + m_settings.m_importPassword).toLocal8Bit().toBase64();
|
||||
request.setRawHeader("Authorization", "Basic " + encoded);
|
||||
}
|
||||
m_networkManager->get(request);
|
||||
}
|
||||
|
||||
// Handle opensky-network API call reply
|
||||
|
@ -133,7 +133,7 @@ As a server:
|
||||
The Beast binary and Hex formats are as detailed here: https://wiki.jetvision.de/wiki/Mode-S_Beast:Data_Output_Formats
|
||||
|
||||
When Enable import is checked, aircraft data for aircraft anywhere in the world can be imported from OpenSky Network.
|
||||
A username and password are not required, but when specified, this allows the update period to be reduced to 5 seconds instead of 10 seconds.
|
||||
A username and password are not required, but when specified, this allows the update period to be reduced to 5 seconds instead of 10 seconds, and 4000 API calls per day instead of 400.
|
||||
To limit network traffic and processing power requirements, a geographical region can be set via the minimum and maximum latitude and longitude fields.
|
||||
|
||||
<h3>17: Open Notifications Dialog</h3>
|
||||
|
@ -881,8 +881,8 @@ RemoteTCPProtocol::Device RemoteTCPSinkSink::getDevice()
|
||||
|
||||
void RemoteTCPSinkSink::acceptWebConnection()
|
||||
{
|
||||
QMutexLocker mutexLocker(&m_mutex);
|
||||
QWebSocket *client = m_webSocketServer->nextPendingConnection();
|
||||
QMutexLocker mutexLocker(&m_mutex);
|
||||
QWebSocket *client = m_webSocketServer->nextPendingConnection();
|
||||
|
||||
connect(client, &QWebSocket::binaryMessageReceived, this, &RemoteTCPSinkSink::processCommand);
|
||||
connect(client, &QWebSocket::disconnected, this, &RemoteTCPSinkSink::disconnected);
|
||||
@ -891,8 +891,11 @@ void RemoteTCPSinkSink::acceptWebConnection()
|
||||
// https://bugreports.qt.io/browse/QTBUG-125874
|
||||
QTimer::singleShot(200, this, [this, client] () {
|
||||
QMutexLocker mutexLocker(&m_mutex);
|
||||
m_clients.append(new WebSocket(client));
|
||||
acceptConnection(m_clients.last());
|
||||
if (client->isValid())
|
||||
{
|
||||
m_clients.append(new WebSocket(client));
|
||||
acceptConnection(m_clients.last());
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
@ -912,8 +915,11 @@ void RemoteTCPSinkSink::acceptTCPConnection()
|
||||
|
||||
QTimer::singleShot(200, this, [this, client] () {
|
||||
QMutexLocker mutexLocker(&m_mutex);
|
||||
m_clients.append(new TCPSocket(client));
|
||||
acceptConnection(m_clients.last());
|
||||
if (client->isValid())
|
||||
{
|
||||
m_clients.append(new TCPSocket(client));
|
||||
acceptConnection(m_clients.last());
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
|
@ -123,3 +123,10 @@ This label turns green when data has been transmitted to the device.
|
||||
- **D**: turns red if stream experiences packet drop outs
|
||||
|
||||
The stream warning indicators are reset when the acquisition is started.
|
||||
|
||||
<h2>GPIOs</h2>
|
||||
|
||||
The USRP device settings supports 8-bit `gpioDir` and `gpioPins` settings. These can be set via the Web API or Simple PTT feature.
|
||||
`gpioDir` can be set to 0 for default ATR (automatic transmit/receive) functionality or 1 for GPIO output.
|
||||
On the b210, the GPIOs are on J504 header. Bit 0 corresponds to pin 1.
|
||||
On other USRP devices, that may have multiple GPIO banks, these settings correspond to bank `FP0` (Front panel).
|
||||
|
@ -813,6 +813,25 @@ bool USRPOutput::applySettings(const USRPOutputSettings& settings, const QList<Q
|
||||
}
|
||||
}
|
||||
|
||||
if (settingsKeys.contains("gpioDir") || force)
|
||||
{
|
||||
if (m_deviceShared.m_deviceParams->getDevice())
|
||||
{
|
||||
m_deviceShared.m_deviceParams->getDevice()->set_gpio_attr("FP0", "CTRL", ~settings.m_gpioDir, 0xff); // 0 for GPIO, 1 for ATR
|
||||
m_deviceShared.m_deviceParams->getDevice()->set_gpio_attr("FP0", "DDR", settings.m_gpioDir, 0xff); // 0 for input, 1 for output
|
||||
qDebug() << "USRPOutput::applySettings: set GPIO dir to " << settings.m_gpioDir;
|
||||
}
|
||||
}
|
||||
|
||||
if (settingsKeys.contains("gpioPins") || force)
|
||||
{
|
||||
if (m_deviceShared.m_deviceParams->getDevice())
|
||||
{
|
||||
m_deviceShared.m_deviceParams->getDevice()->set_gpio_attr("FP0", "OUT", settings.m_gpioPins, 0xff);
|
||||
qDebug() << "USRPOutput::applySettings: set GPIO pins to " << settings.m_gpioPins;
|
||||
}
|
||||
}
|
||||
|
||||
if (settingsKeys.contains("useReverseAPI"))
|
||||
{
|
||||
bool fullUpdate = (settingsKeys.contains("useReverseAPI") && settings.m_useReverseAPI) ||
|
||||
@ -1036,6 +1055,12 @@ void USRPOutput::webapiUpdateDeviceSettings(
|
||||
if (deviceSettingsKeys.contains("transverterMode")) {
|
||||
settings.m_transverterMode = response.getUsrpOutputSettings()->getTransverterMode() != 0;
|
||||
}
|
||||
if (deviceSettingsKeys.contains("gpioDir")) {
|
||||
settings.m_gpioDir = response.getUsrpOutputSettings()->getGpioDir();
|
||||
}
|
||||
if (deviceSettingsKeys.contains("gpioPins")) {
|
||||
settings.m_gpioPins = response.getUsrpOutputSettings()->getGpioPins();
|
||||
}
|
||||
if (deviceSettingsKeys.contains("useReverseAPI")) {
|
||||
settings.m_useReverseAPI = response.getUsrpOutputSettings()->getUseReverseApi() != 0;
|
||||
}
|
||||
@ -1072,6 +1097,8 @@ void USRPOutput::webapiFormatDeviceSettings(SWGSDRangel::SWGDeviceSettings& resp
|
||||
response.getUsrpOutputSettings()->setLpfBw(settings.m_lpfBW);
|
||||
response.getUsrpOutputSettings()->setTransverterDeltaFrequency(settings.m_transverterDeltaFrequency);
|
||||
response.getUsrpOutputSettings()->setTransverterMode(settings.m_transverterMode ? 1 : 0);
|
||||
response.getUsrpOutputSettings()->setGpioDir(settings.m_gpioDir);
|
||||
response.getUsrpOutputSettings()->setGpioPins(settings.m_gpioPins);
|
||||
response.getUsrpOutputSettings()->setUseReverseApi(settings.m_useReverseAPI ? 1 : 0);
|
||||
|
||||
if (response.getUsrpOutputSettings()->getReverseApiAddress()) {
|
||||
@ -1172,6 +1199,12 @@ void USRPOutput::webapiReverseSendSettings(const QList<QString>& deviceSettingsK
|
||||
if (deviceSettingsKeys.contains("transverterMode") || force) {
|
||||
swgUsrpOutputSettings->setTransverterMode(settings.m_transverterMode ? 1 : 0);
|
||||
}
|
||||
if (deviceSettingsKeys.contains("gpioDir") || force) {
|
||||
swgUsrpOutputSettings->setGpioDir(settings.m_gpioDir);
|
||||
}
|
||||
if (deviceSettingsKeys.contains("gpioPins") || force) {
|
||||
swgUsrpOutputSettings->setGpioPins(settings.m_gpioPins);
|
||||
}
|
||||
|
||||
QString deviceSettingsURL = QString("http://%1:%2/sdrangel/deviceset/%3/device/settings")
|
||||
.arg(settings.m_reverseAPIAddress)
|
||||
|
@ -40,6 +40,8 @@ void USRPOutputSettings::resetToDefaults()
|
||||
m_clockSource = "internal";
|
||||
m_transverterMode = false;
|
||||
m_transverterDeltaFrequency = 0;
|
||||
m_gpioDir = 0;
|
||||
m_gpioPins = 0;
|
||||
m_useReverseAPI = false;
|
||||
m_reverseAPIAddress = "127.0.0.1";
|
||||
m_reverseAPIPort = 8888;
|
||||
@ -63,6 +65,8 @@ QByteArray USRPOutputSettings::serialize() const
|
||||
s.writeU32(11, m_reverseAPIPort);
|
||||
s.writeU32(12, m_reverseAPIDeviceIndex);
|
||||
s.writeS32(13, m_loOffset);
|
||||
s.writeU32(14, m_gpioDir);
|
||||
s.writeU32(15, m_gpioPins);
|
||||
|
||||
return s.final();
|
||||
}
|
||||
@ -102,6 +106,10 @@ bool USRPOutputSettings::deserialize(const QByteArray& data)
|
||||
d.readU32(12, &uintval, 0);
|
||||
m_reverseAPIDeviceIndex = uintval > 99 ? 99 : uintval;
|
||||
d.readS32(13, &m_loOffset, 0);
|
||||
d.readU32(14, &uintval, 0);
|
||||
m_gpioDir = uintval & 0xFF;
|
||||
d.readU32(15, &uintval, 0);
|
||||
m_gpioPins = uintval & 0xFF;
|
||||
|
||||
return true;
|
||||
}
|
||||
@ -148,6 +156,12 @@ void USRPOutputSettings::applySettings(const QStringList& settingsKeys, const US
|
||||
if (settingsKeys.contains("transverterDeltaFrequency")) {
|
||||
m_transverterDeltaFrequency = settings.m_transverterDeltaFrequency;
|
||||
}
|
||||
if (settingsKeys.contains("gpioDir")) {
|
||||
m_gpioDir = settings.m_gpioDir;
|
||||
}
|
||||
if (settingsKeys.contains("gpioPins")) {
|
||||
m_gpioPins = settings.m_gpioPins;
|
||||
}
|
||||
if (settingsKeys.contains("useReverseAPI")) {
|
||||
m_useReverseAPI = settings.m_useReverseAPI;
|
||||
}
|
||||
@ -199,6 +213,12 @@ QString USRPOutputSettings::getDebugString(const QStringList& settingsKeys, bool
|
||||
if (settingsKeys.contains("transverterDeltaFrequency") || force) {
|
||||
ostr << " m_transverterDeltaFrequency: " << m_transverterDeltaFrequency;
|
||||
}
|
||||
if (settingsKeys.contains("gpioDir") || force) {
|
||||
ostr << " m_gpioDir: " << (int) m_gpioDir;
|
||||
}
|
||||
if (settingsKeys.contains("gpioPins") || force) {
|
||||
ostr << " m_gpioPins: " << (int) m_gpioPins;
|
||||
}
|
||||
if (settingsKeys.contains("useReverseAPI") || force) {
|
||||
ostr << " m_useReverseAPI: " << m_useReverseAPI;
|
||||
}
|
||||
|
@ -45,6 +45,8 @@ struct USRPOutputSettings
|
||||
QString m_clockSource;
|
||||
bool m_transverterMode;
|
||||
qint64 m_transverterDeltaFrequency;
|
||||
uint8_t m_gpioDir; //!< GPIO pin direction; 0 ATR (automatic transmit/receive), 1 output
|
||||
uint8_t m_gpioPins; //!< GPIO pins levels for outputs
|
||||
bool m_useReverseAPI;
|
||||
QString m_reverseAPIAddress;
|
||||
uint16_t m_reverseAPIPort;
|
||||
|
@ -143,3 +143,10 @@ On Ubuntu 20, the libuhd-dev package should be installed. The FPGA images then n
|
||||
```shell
|
||||
sudo /usr/lib/uhd/utils/uhd_images_downloader.py
|
||||
```
|
||||
|
||||
<h2>GPIOs</h2>
|
||||
|
||||
The USRP device settings supports 8-bit `gpioDir` and `gpioPins` settings. These can be set via the Web API or Simple PTT feature.
|
||||
`gpioDir` can be set to 0 for default ATR (automatic transmit/receive) functionality or 1 for GPIO output.
|
||||
On the b210, the GPIOs are on J504 header. Bit 0 corresponds to pin 1.
|
||||
On other USRP devices, that may have multiple GPIO banks, these settings correspond to bank `FP0` (Front panel).
|
||||
|
@ -895,6 +895,25 @@ bool USRPInput::applySettings(const USRPInputSettings& settings, const QList<QSt
|
||||
}
|
||||
}
|
||||
|
||||
if (settingsKeys.contains("gpioDir") || force)
|
||||
{
|
||||
if (m_deviceShared.m_deviceParams->getDevice())
|
||||
{
|
||||
m_deviceShared.m_deviceParams->getDevice()->set_gpio_attr("FP0", "CTRL", ~settings.m_gpioDir, 0xff); // 0 for GPIO, 1 for ATR
|
||||
m_deviceShared.m_deviceParams->getDevice()->set_gpio_attr("FP0", "DDR", settings.m_gpioDir, 0xff); // 0 for input, 1 for output
|
||||
qDebug() << "USRPInput::applySettings: set GPIO dir to " << settings.m_gpioDir;
|
||||
}
|
||||
}
|
||||
|
||||
if (settingsKeys.contains("gpioPins") || force)
|
||||
{
|
||||
if (m_deviceShared.m_deviceParams->getDevice())
|
||||
{
|
||||
m_deviceShared.m_deviceParams->getDevice()->set_gpio_attr("FP0", "OUT", settings.m_gpioPins, 0xff);
|
||||
qDebug() << "USRPInput::applySettings: set GPIO pins to " << settings.m_gpioPins;
|
||||
}
|
||||
}
|
||||
|
||||
if (settingsKeys.contains("useReverseAPI"))
|
||||
{
|
||||
bool fullUpdate = (settingsKeys.contains("useReverseAPI") && settings.m_useReverseAPI) ||
|
||||
@ -1162,6 +1181,12 @@ void USRPInput::webapiUpdateDeviceSettings(
|
||||
if (deviceSettingsKeys.contains("transverterMode")) {
|
||||
settings.m_transverterMode = response.getUsrpInputSettings()->getTransverterMode() != 0;
|
||||
}
|
||||
if (deviceSettingsKeys.contains("gpioDir")) {
|
||||
settings.m_gpioDir = response.getUsrpInputSettings()->getGpioDir();
|
||||
}
|
||||
if (deviceSettingsKeys.contains("gpioPins")) {
|
||||
settings.m_gpioPins = response.getUsrpInputSettings()->getGpioPins();
|
||||
}
|
||||
if (deviceSettingsKeys.contains("useReverseAPI")) {
|
||||
settings.m_useReverseAPI = response.getUsrpInputSettings()->getUseReverseApi() != 0;
|
||||
}
|
||||
@ -1191,6 +1216,8 @@ void USRPInput::webapiFormatDeviceSettings(SWGSDRangel::SWGDeviceSettings& respo
|
||||
response.getUsrpInputSettings()->setLpfBw(settings.m_lpfBW);
|
||||
response.getUsrpInputSettings()->setTransverterDeltaFrequency(settings.m_transverterDeltaFrequency);
|
||||
response.getUsrpInputSettings()->setTransverterMode(settings.m_transverterMode ? 1 : 0);
|
||||
response.getUsrpInputSettings()->setGpioDir(settings.m_gpioDir);
|
||||
response.getUsrpInputSettings()->setGpioPins(settings.m_gpioPins);
|
||||
response.getUsrpInputSettings()->setUseReverseApi(settings.m_useReverseAPI ? 1 : 0);
|
||||
|
||||
if (response.getUsrpInputSettings()->getReverseApiAddress()) {
|
||||
@ -1311,6 +1338,12 @@ void USRPInput::webapiReverseSendSettings(const QList<QString>& deviceSettingsKe
|
||||
if (deviceSettingsKeys.contains("transverterMode") || force) {
|
||||
swgUsrpInputSettings->setTransverterMode(settings.m_transverterMode ? 1 : 0);
|
||||
}
|
||||
if (deviceSettingsKeys.contains("gpioDir") || force) {
|
||||
swgUsrpInputSettings->setGpioDir(settings.m_gpioDir);
|
||||
}
|
||||
if (deviceSettingsKeys.contains("gpioPins") || force) {
|
||||
swgUsrpInputSettings->setGpioPins(settings.m_gpioPins);
|
||||
}
|
||||
|
||||
QString deviceSettingsURL = QString("http://%1:%2/sdrangel/deviceset/%3/device/settings")
|
||||
.arg(settings.m_reverseAPIAddress)
|
||||
|
@ -46,6 +46,8 @@ void USRPInputSettings::resetToDefaults()
|
||||
m_replayLength = 20.0f;
|
||||
m_replayStep = 5.0f;
|
||||
m_replayLoop = false;
|
||||
m_gpioDir = 0;
|
||||
m_gpioPins = 0;
|
||||
m_useReverseAPI = false;
|
||||
m_reverseAPIAddress = "127.0.0.1";
|
||||
m_reverseAPIPort = 8888;
|
||||
@ -76,6 +78,8 @@ QByteArray USRPInputSettings::serialize() const
|
||||
s.writeFloat(18, m_replayLength);
|
||||
s.writeFloat(19, m_replayStep);
|
||||
s.writeBool(20, m_replayLoop);
|
||||
s.writeU32(21, m_gpioDir);
|
||||
s.writeU32(22, m_gpioPins);
|
||||
|
||||
return s.final();
|
||||
}
|
||||
@ -124,6 +128,10 @@ bool USRPInputSettings::deserialize(const QByteArray& data)
|
||||
d.readFloat(18, &m_replayLength, 20.0f);
|
||||
d.readFloat(19, &m_replayStep, 5.0f);
|
||||
d.readBool(20, &m_replayLoop, false);
|
||||
d.readU32(21, &uintval, 0);
|
||||
m_gpioDir = uintval & 0xFF;
|
||||
d.readU32(22, &uintval, 0);
|
||||
m_gpioPins = uintval & 0xFF;
|
||||
|
||||
return true;
|
||||
}
|
||||
@ -191,6 +199,12 @@ void USRPInputSettings::applySettings(const QStringList& settingsKeys, const USR
|
||||
if (settingsKeys.contains("replayLoop")) {
|
||||
m_replayLoop = settings.m_replayLoop;
|
||||
}
|
||||
if (settingsKeys.contains("gpioDir")) {
|
||||
m_gpioDir = settings.m_gpioDir;
|
||||
}
|
||||
if (settingsKeys.contains("gpioPins")) {
|
||||
m_gpioPins = settings.m_gpioPins;
|
||||
}
|
||||
if (settingsKeys.contains("useReverseAPI")) {
|
||||
m_useReverseAPI = settings.m_useReverseAPI;
|
||||
}
|
||||
@ -263,6 +277,12 @@ QString USRPInputSettings::getDebugString(const QStringList& settingsKeys, bool
|
||||
if (settingsKeys.contains("replayLoop") || force) {
|
||||
ostr << " m_replayLoop: " << m_replayLoop;
|
||||
}
|
||||
if (settingsKeys.contains("gpioDir") || force) {
|
||||
ostr << " m_gpioDir: " << (int) m_gpioDir;
|
||||
}
|
||||
if (settingsKeys.contains("gpioPins") || force) {
|
||||
ostr << " m_gpioPins: " << (int) m_gpioPins;
|
||||
}
|
||||
if (settingsKeys.contains("useReverseAPI") || force) {
|
||||
ostr << " m_useReverseAPI: " << m_useReverseAPI;
|
||||
}
|
||||
|
@ -52,10 +52,12 @@ struct USRPInputSettings
|
||||
QString m_clockSource;
|
||||
bool m_transverterMode;
|
||||
qint64 m_transverterDeltaFrequency;
|
||||
float m_replayOffset; //!< Replay offset in seconds
|
||||
float m_replayOffset; //!< Replay offset in seconds
|
||||
float m_replayLength; //!< Replay buffer size in seconds
|
||||
float m_replayStep; //!< Replay forward/back step size in seconds
|
||||
bool m_replayLoop; //!< Replay buffer repeatedly without recording new data
|
||||
uint8_t m_gpioDir; //!< GPIO pin direction; 0 ATR (automatic transmit/receive), 1 output
|
||||
uint8_t m_gpioPins; //!< GPIO pins levels for outputs
|
||||
bool m_useReverseAPI;
|
||||
QString m_reverseAPIAddress;
|
||||
uint16_t m_reverseAPIPort;
|
||||
|
@ -1319,9 +1319,15 @@ bool ChannelWebAPIUtils::patchDeviceSetting(unsigned int deviceIndex, const QStr
|
||||
SWGSDRangel::SWGErrorResponse errorResponse2;
|
||||
delete jsonObj;
|
||||
|
||||
DeviceSampleSource *source = deviceSet->m_deviceAPI->getSampleSource();
|
||||
|
||||
httpRC = source->webapiSettingsPutPatch(false, deviceSettingsKeys, deviceSettingsResponse, *errorResponse2.getMessage());
|
||||
if (DeviceSampleSource *source = deviceSet->m_deviceAPI->getSampleSource()) {
|
||||
httpRC = source->webapiSettingsPutPatch(false, deviceSettingsKeys, deviceSettingsResponse, *errorResponse2.getMessage());
|
||||
} else if (DeviceSampleSink *sink = deviceSet->m_deviceAPI->getSampleSink()) {
|
||||
httpRC = sink->webapiSettingsPutPatch(false, deviceSettingsKeys, deviceSettingsResponse, *errorResponse2.getMessage());
|
||||
} else if (DeviceSampleMIMO *mimo = deviceSet->m_deviceAPI->getSampleMIMO()) {
|
||||
httpRC = mimo->webapiSettingsPutPatch(false, deviceSettingsKeys, deviceSettingsResponse, *errorResponse2.getMessage());
|
||||
} else {
|
||||
httpRC = 404;
|
||||
}
|
||||
|
||||
if (httpRC/100 == 2)
|
||||
{
|
||||
|
@ -13451,6 +13451,18 @@ margin-bottom: 20px;
|
||||
"properties" : {
|
||||
"sampleRate" : {
|
||||
"type" : "integer"
|
||||
},
|
||||
"latitude" : {
|
||||
"type" : "number",
|
||||
"format" : "float"
|
||||
},
|
||||
"longitude" : {
|
||||
"type" : "number",
|
||||
"format" : "float"
|
||||
},
|
||||
"altitude" : {
|
||||
"type" : "number",
|
||||
"format" : "float"
|
||||
}
|
||||
},
|
||||
"description" : "RemoteTCPInput"
|
||||
@ -16824,6 +16836,14 @@ margin-bottom: 20px;
|
||||
"type" : "integer",
|
||||
"format" : "int64"
|
||||
},
|
||||
"gpioDir" : {
|
||||
"type" : "integer",
|
||||
"format" : "int8"
|
||||
},
|
||||
"gpioPins" : {
|
||||
"type" : "integer",
|
||||
"format" : "int8"
|
||||
},
|
||||
"useReverseAPI" : {
|
||||
"type" : "integer",
|
||||
"description" : "Synchronize with reverse API (1 for yes, 0 for no)"
|
||||
@ -16893,6 +16913,14 @@ margin-bottom: 20px;
|
||||
"type" : "integer",
|
||||
"format" : "int64"
|
||||
},
|
||||
"gpioDir" : {
|
||||
"type" : "integer",
|
||||
"format" : "int8"
|
||||
},
|
||||
"gpioPins" : {
|
||||
"type" : "integer",
|
||||
"format" : "int8"
|
||||
},
|
||||
"useReverseAPI" : {
|
||||
"type" : "integer",
|
||||
"description" : "Synchronize with reverse API (1 for yes, 0 for no)"
|
||||
@ -59441,7 +59469,7 @@ except ApiException as e:
|
||||
</div>
|
||||
<div id="generator">
|
||||
<div class="content">
|
||||
Generated 2024-07-16T23:20:27.082+02:00
|
||||
Generated 2024-12-24T11:56:24.260+01:00
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
@ -61,3 +61,12 @@ RemoteTCPInputReport:
|
||||
properties:
|
||||
sampleRate:
|
||||
type: integer
|
||||
latitude:
|
||||
type: number
|
||||
format: float
|
||||
longitude:
|
||||
type: number
|
||||
format: float
|
||||
altitude:
|
||||
type: number
|
||||
format: float
|
||||
|
@ -30,6 +30,12 @@ USRPInputSettings:
|
||||
transverterDeltaFrequency:
|
||||
type: integer
|
||||
format: int64
|
||||
gpioDir:
|
||||
type: integer
|
||||
format: int8
|
||||
gpioPins:
|
||||
type: integer
|
||||
format: int8
|
||||
useReverseAPI:
|
||||
description: Synchronize with reverse API (1 for yes, 0 for no)
|
||||
type: integer
|
||||
@ -65,6 +71,12 @@ USRPOutputSettings:
|
||||
transverterDeltaFrequency:
|
||||
type: integer
|
||||
format: int64
|
||||
gpioDir:
|
||||
type: integer
|
||||
format: int8
|
||||
gpioPins:
|
||||
type: integer
|
||||
format: int8
|
||||
useReverseAPI:
|
||||
description: Synchronize with reverse API (1 for yes, 0 for no)
|
||||
type: integer
|
||||
|
@ -30,6 +30,12 @@ USRPInputSettings:
|
||||
transverterDeltaFrequency:
|
||||
type: integer
|
||||
format: int64
|
||||
gpioDir:
|
||||
type: integer
|
||||
format: int8
|
||||
gpioPins:
|
||||
type: integer
|
||||
format: int8
|
||||
useReverseAPI:
|
||||
description: Synchronize with reverse API (1 for yes, 0 for no)
|
||||
type: integer
|
||||
@ -65,6 +71,12 @@ USRPOutputSettings:
|
||||
transverterDeltaFrequency:
|
||||
type: integer
|
||||
format: int64
|
||||
gpioDir:
|
||||
type: integer
|
||||
format: int8
|
||||
gpioPins:
|
||||
type: integer
|
||||
format: int8
|
||||
useReverseAPI:
|
||||
description: Synchronize with reverse API (1 for yes, 0 for no)
|
||||
type: integer
|
||||
|
@ -13451,6 +13451,18 @@ margin-bottom: 20px;
|
||||
"properties" : {
|
||||
"sampleRate" : {
|
||||
"type" : "integer"
|
||||
},
|
||||
"latitude" : {
|
||||
"type" : "number",
|
||||
"format" : "float"
|
||||
},
|
||||
"longitude" : {
|
||||
"type" : "number",
|
||||
"format" : "float"
|
||||
},
|
||||
"altitude" : {
|
||||
"type" : "number",
|
||||
"format" : "float"
|
||||
}
|
||||
},
|
||||
"description" : "RemoteTCPInput"
|
||||
@ -16824,6 +16836,14 @@ margin-bottom: 20px;
|
||||
"type" : "integer",
|
||||
"format" : "int64"
|
||||
},
|
||||
"gpioDir" : {
|
||||
"type" : "integer",
|
||||
"format" : "int8"
|
||||
},
|
||||
"gpioPins" : {
|
||||
"type" : "integer",
|
||||
"format" : "int8"
|
||||
},
|
||||
"useReverseAPI" : {
|
||||
"type" : "integer",
|
||||
"description" : "Synchronize with reverse API (1 for yes, 0 for no)"
|
||||
@ -16893,6 +16913,14 @@ margin-bottom: 20px;
|
||||
"type" : "integer",
|
||||
"format" : "int64"
|
||||
},
|
||||
"gpioDir" : {
|
||||
"type" : "integer",
|
||||
"format" : "int8"
|
||||
},
|
||||
"gpioPins" : {
|
||||
"type" : "integer",
|
||||
"format" : "int8"
|
||||
},
|
||||
"useReverseAPI" : {
|
||||
"type" : "integer",
|
||||
"description" : "Synchronize with reverse API (1 for yes, 0 for no)"
|
||||
@ -59441,7 +59469,7 @@ except ApiException as e:
|
||||
</div>
|
||||
<div id="generator">
|
||||
<div class="content">
|
||||
Generated 2024-07-16T23:20:27.082+02:00
|
||||
Generated 2024-12-24T11:56:24.260+01:00
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
@ -1,6 +1,6 @@
|
||||
/**
|
||||
* SDRangel
|
||||
* This is the web REST/JSON API of SDRangel SDR software. SDRangel is an Open Source Qt5/OpenGL 3.0+ (4.3+ in Windows) GUI and server Software Defined Radio and signal analyzer in software. It supports Airspy, BladeRF, HackRF, LimeSDR, PlutoSDR, RTL-SDR, SDRplay RSP1 and FunCube --- Limitations and specifcities: * In SDRangel GUI the first Rx device set cannot be deleted. Conversely the server starts with no device sets and its number of device sets can be reduced to zero by as many calls as necessary to /sdrangel/deviceset with DELETE method. * Preset import and export from/to file is a server only feature. * Device set focus is a GUI only feature. * The following channels are not implemented (status 501 is returned): ATV and DATV demodulators, Channel Analyzer NG, LoRa demodulator * The device settings and report structures contains only the sub-structure corresponding to the device type. The DeviceSettings and DeviceReport structures documented here shows all of them but only one will be or should be present at a time * The channel settings and report structures contains only the sub-structure corresponding to the channel type. The ChannelSettings and ChannelReport structures documented here shows all of them but only one will be or should be present at a time ---
|
||||
* This is the web REST/JSON API of SDRangel SDR software. SDRangel is an Open Source Qt5/OpenGL 3.0+ (4.3+ in Windows) GUI and server Software Defined Radio and signal analyzer in software. It supports Airspy, BladeRF, HackRF, LimeSDR, PlutoSDR, RTL-SDR, SDRplay RSP1 and FunCube --- Limitations and specifcities: * In SDRangel GUI the first Rx device set cannot be deleted. Conversely the server starts with no device sets and its number of device sets can be reduced to zero by as many calls as necessary to /sdrangel/deviceset with DELETE method. * Preset import and export from/to file is a server only feature. * Device set focus is a GUI only feature. * The following channels are not implemented (status 501 is returned): ATV and DATV demodulators, Channel Analyzer NG, LoRa demodulator * The device settings and report structures contains only the sub-structure corresponding to the device type. The DeviceSettings and DeviceReport structures documented here shows all of them but only one will be or should be present at a time * The channel settings and report structures contains only the sub-structure corresponding to the channel type. The ChannelSettings and ChannelReport structures documented here shows all of them but only one will be or should be present at a time ---
|
||||
*
|
||||
* OpenAPI spec version: 7.0.0
|
||||
* Contact: f4exb06@gmail.com
|
||||
@ -30,6 +30,12 @@ SWGRemoteTCPInputReport::SWGRemoteTCPInputReport(QString* json) {
|
||||
SWGRemoteTCPInputReport::SWGRemoteTCPInputReport() {
|
||||
sample_rate = 0;
|
||||
m_sample_rate_isSet = false;
|
||||
latitude = 0.0f;
|
||||
m_latitude_isSet = false;
|
||||
longitude = 0.0f;
|
||||
m_longitude_isSet = false;
|
||||
altitude = 0.0f;
|
||||
m_altitude_isSet = false;
|
||||
}
|
||||
|
||||
SWGRemoteTCPInputReport::~SWGRemoteTCPInputReport() {
|
||||
@ -40,11 +46,20 @@ void
|
||||
SWGRemoteTCPInputReport::init() {
|
||||
sample_rate = 0;
|
||||
m_sample_rate_isSet = false;
|
||||
latitude = 0.0f;
|
||||
m_latitude_isSet = false;
|
||||
longitude = 0.0f;
|
||||
m_longitude_isSet = false;
|
||||
altitude = 0.0f;
|
||||
m_altitude_isSet = false;
|
||||
}
|
||||
|
||||
void
|
||||
SWGRemoteTCPInputReport::cleanup() {
|
||||
|
||||
|
||||
|
||||
|
||||
}
|
||||
|
||||
SWGRemoteTCPInputReport*
|
||||
@ -59,7 +74,13 @@ SWGRemoteTCPInputReport::fromJson(QString &json) {
|
||||
void
|
||||
SWGRemoteTCPInputReport::fromJsonObject(QJsonObject &pJson) {
|
||||
::SWGSDRangel::setValue(&sample_rate, pJson["sampleRate"], "qint32", "");
|
||||
|
||||
|
||||
::SWGSDRangel::setValue(&latitude, pJson["latitude"], "float", "");
|
||||
|
||||
::SWGSDRangel::setValue(&longitude, pJson["longitude"], "float", "");
|
||||
|
||||
::SWGSDRangel::setValue(&altitude, pJson["altitude"], "float", "");
|
||||
|
||||
}
|
||||
|
||||
QString
|
||||
@ -79,9 +100,15 @@ SWGRemoteTCPInputReport::asJsonObject() {
|
||||
if(m_sample_rate_isSet){
|
||||
obj->insert("sampleRate", QJsonValue(sample_rate));
|
||||
}
|
||||
obj->insert("latitude", QJsonValue(latitude));
|
||||
obj->insert("longitude", QJsonValue(longitude));
|
||||
obj->insert("altitude", QJsonValue(altitude));
|
||||
if(m_latitude_isSet){
|
||||
obj->insert("latitude", QJsonValue(latitude));
|
||||
}
|
||||
if(m_longitude_isSet){
|
||||
obj->insert("longitude", QJsonValue(longitude));
|
||||
}
|
||||
if(m_altitude_isSet){
|
||||
obj->insert("altitude", QJsonValue(altitude));
|
||||
}
|
||||
|
||||
return obj;
|
||||
}
|
||||
@ -96,6 +123,36 @@ SWGRemoteTCPInputReport::setSampleRate(qint32 sample_rate) {
|
||||
this->m_sample_rate_isSet = true;
|
||||
}
|
||||
|
||||
float
|
||||
SWGRemoteTCPInputReport::getLatitude() {
|
||||
return latitude;
|
||||
}
|
||||
void
|
||||
SWGRemoteTCPInputReport::setLatitude(float latitude) {
|
||||
this->latitude = latitude;
|
||||
this->m_latitude_isSet = true;
|
||||
}
|
||||
|
||||
float
|
||||
SWGRemoteTCPInputReport::getLongitude() {
|
||||
return longitude;
|
||||
}
|
||||
void
|
||||
SWGRemoteTCPInputReport::setLongitude(float longitude) {
|
||||
this->longitude = longitude;
|
||||
this->m_longitude_isSet = true;
|
||||
}
|
||||
|
||||
float
|
||||
SWGRemoteTCPInputReport::getAltitude() {
|
||||
return altitude;
|
||||
}
|
||||
void
|
||||
SWGRemoteTCPInputReport::setAltitude(float altitude) {
|
||||
this->altitude = altitude;
|
||||
this->m_altitude_isSet = true;
|
||||
}
|
||||
|
||||
|
||||
bool
|
||||
SWGRemoteTCPInputReport::isSet(){
|
||||
@ -104,6 +161,15 @@ SWGRemoteTCPInputReport::isSet(){
|
||||
if(m_sample_rate_isSet){
|
||||
isObjectUpdated = true; break;
|
||||
}
|
||||
if(m_latitude_isSet){
|
||||
isObjectUpdated = true; break;
|
||||
}
|
||||
if(m_longitude_isSet){
|
||||
isObjectUpdated = true; break;
|
||||
}
|
||||
if(m_altitude_isSet){
|
||||
isObjectUpdated = true; break;
|
||||
}
|
||||
}while(false);
|
||||
return isObjectUpdated;
|
||||
}
|
||||
|
@ -1,6 +1,6 @@
|
||||
/**
|
||||
* SDRangel
|
||||
* This is the web REST/JSON API of SDRangel SDR software. SDRangel is an Open Source Qt5/OpenGL 3.0+ (4.3+ in Windows) GUI and server Software Defined Radio and signal analyzer in software. It supports Airspy, BladeRF, HackRF, LimeSDR, PlutoSDR, RTL-SDR, SDRplay RSP1 and FunCube --- Limitations and specifcities: * In SDRangel GUI the first Rx device set cannot be deleted. Conversely the server starts with no device sets and its number of device sets can be reduced to zero by as many calls as necessary to /sdrangel/deviceset with DELETE method. * Preset import and export from/to file is a server only feature. * Device set focus is a GUI only feature. * The following channels are not implemented (status 501 is returned): ATV and DATV demodulators, Channel Analyzer NG, LoRa demodulator * The device settings and report structures contains only the sub-structure corresponding to the device type. The DeviceSettings and DeviceReport structures documented here shows all of them but only one will be or should be present at a time * The channel settings and report structures contains only the sub-structure corresponding to the channel type. The ChannelSettings and ChannelReport structures documented here shows all of them but only one will be or should be present at a time ---
|
||||
* This is the web REST/JSON API of SDRangel SDR software. SDRangel is an Open Source Qt5/OpenGL 3.0+ (4.3+ in Windows) GUI and server Software Defined Radio and signal analyzer in software. It supports Airspy, BladeRF, HackRF, LimeSDR, PlutoSDR, RTL-SDR, SDRplay RSP1 and FunCube --- Limitations and specifcities: * In SDRangel GUI the first Rx device set cannot be deleted. Conversely the server starts with no device sets and its number of device sets can be reduced to zero by as many calls as necessary to /sdrangel/deviceset with DELETE method. * Preset import and export from/to file is a server only feature. * Device set focus is a GUI only feature. * The following channels are not implemented (status 501 is returned): ATV and DATV demodulators, Channel Analyzer NG, LoRa demodulator * The device settings and report structures contains only the sub-structure corresponding to the device type. The DeviceSettings and DeviceReport structures documented here shows all of them but only one will be or should be present at a time * The channel settings and report structures contains only the sub-structure corresponding to the channel type. The ChannelSettings and ChannelReport structures documented here shows all of them but only one will be or should be present at a time ---
|
||||
*
|
||||
* OpenAPI spec version: 7.0.0
|
||||
* Contact: f4exb06@gmail.com
|
||||
@ -43,21 +43,31 @@ public:
|
||||
|
||||
qint32 getSampleRate();
|
||||
void setSampleRate(qint32 sample_rate);
|
||||
float getLatitude() { return latitude; }
|
||||
float getLongitude() { return longitude; }
|
||||
float getAltitude() { return altitude; }
|
||||
void setLatitude(float latitude) { this->latitude = latitude; }
|
||||
void setLongitude(float longitude) { this->longitude = longitude; }
|
||||
void setAltitude(float altitude) { this->altitude = altitude; }
|
||||
|
||||
float getLatitude();
|
||||
void setLatitude(float latitude);
|
||||
|
||||
float getLongitude();
|
||||
void setLongitude(float longitude);
|
||||
|
||||
float getAltitude();
|
||||
void setAltitude(float altitude);
|
||||
|
||||
|
||||
virtual bool isSet() override;
|
||||
|
||||
private:
|
||||
qint32 sample_rate;
|
||||
bool m_sample_rate_isSet;
|
||||
|
||||
float latitude;
|
||||
bool m_latitude_isSet;
|
||||
|
||||
float longitude;
|
||||
bool m_longitude_isSet;
|
||||
|
||||
float altitude;
|
||||
bool m_altitude_isSet;
|
||||
|
||||
};
|
||||
|
||||
|
@ -54,6 +54,10 @@ SWGUSRPInputSettings::SWGUSRPInputSettings() {
|
||||
m_transverter_mode_isSet = false;
|
||||
transverter_delta_frequency = 0L;
|
||||
m_transverter_delta_frequency_isSet = false;
|
||||
gpio_dir = 0;
|
||||
m_gpio_dir_isSet = false;
|
||||
gpio_pins = 0;
|
||||
m_gpio_pins_isSet = false;
|
||||
use_reverse_api = 0;
|
||||
m_use_reverse_api_isSet = false;
|
||||
reverse_api_address = nullptr;
|
||||
@ -96,6 +100,10 @@ SWGUSRPInputSettings::init() {
|
||||
m_transverter_mode_isSet = false;
|
||||
transverter_delta_frequency = 0L;
|
||||
m_transverter_delta_frequency_isSet = false;
|
||||
gpio_dir = 0;
|
||||
m_gpio_dir_isSet = false;
|
||||
gpio_pins = 0;
|
||||
m_gpio_pins_isSet = false;
|
||||
use_reverse_api = 0;
|
||||
m_use_reverse_api_isSet = false;
|
||||
reverse_api_address = new QString("");
|
||||
@ -126,6 +134,8 @@ SWGUSRPInputSettings::cleanup() {
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
if(reverse_api_address != nullptr) {
|
||||
delete reverse_api_address;
|
||||
}
|
||||
@ -170,6 +180,10 @@ SWGUSRPInputSettings::fromJsonObject(QJsonObject &pJson) {
|
||||
|
||||
::SWGSDRangel::setValue(&transverter_delta_frequency, pJson["transverterDeltaFrequency"], "qint64", "");
|
||||
|
||||
::SWGSDRangel::setValue(&gpio_dir, pJson["gpioDir"], "qint32", "");
|
||||
|
||||
::SWGSDRangel::setValue(&gpio_pins, pJson["gpioPins"], "qint32", "");
|
||||
|
||||
::SWGSDRangel::setValue(&use_reverse_api, pJson["useReverseAPI"], "qint32", "");
|
||||
|
||||
::SWGSDRangel::setValue(&reverse_api_address, pJson["reverseAPIAddress"], "QString", "QString");
|
||||
@ -233,6 +247,12 @@ SWGUSRPInputSettings::asJsonObject() {
|
||||
if(m_transverter_delta_frequency_isSet){
|
||||
obj->insert("transverterDeltaFrequency", QJsonValue(transverter_delta_frequency));
|
||||
}
|
||||
if(m_gpio_dir_isSet){
|
||||
obj->insert("gpioDir", QJsonValue(gpio_dir));
|
||||
}
|
||||
if(m_gpio_pins_isSet){
|
||||
obj->insert("gpioPins", QJsonValue(gpio_pins));
|
||||
}
|
||||
if(m_use_reverse_api_isSet){
|
||||
obj->insert("useReverseAPI", QJsonValue(use_reverse_api));
|
||||
}
|
||||
@ -379,6 +399,26 @@ SWGUSRPInputSettings::setTransverterDeltaFrequency(qint64 transverter_delta_freq
|
||||
this->m_transverter_delta_frequency_isSet = true;
|
||||
}
|
||||
|
||||
qint32
|
||||
SWGUSRPInputSettings::getGpioDir() {
|
||||
return gpio_dir;
|
||||
}
|
||||
void
|
||||
SWGUSRPInputSettings::setGpioDir(qint32 gpio_dir) {
|
||||
this->gpio_dir = gpio_dir;
|
||||
this->m_gpio_dir_isSet = true;
|
||||
}
|
||||
|
||||
qint32
|
||||
SWGUSRPInputSettings::getGpioPins() {
|
||||
return gpio_pins;
|
||||
}
|
||||
void
|
||||
SWGUSRPInputSettings::setGpioPins(qint32 gpio_pins) {
|
||||
this->gpio_pins = gpio_pins;
|
||||
this->m_gpio_pins_isSet = true;
|
||||
}
|
||||
|
||||
qint32
|
||||
SWGUSRPInputSettings::getUseReverseApi() {
|
||||
return use_reverse_api;
|
||||
@ -463,6 +503,12 @@ SWGUSRPInputSettings::isSet(){
|
||||
if(m_transverter_delta_frequency_isSet){
|
||||
isObjectUpdated = true; break;
|
||||
}
|
||||
if(m_gpio_dir_isSet){
|
||||
isObjectUpdated = true; break;
|
||||
}
|
||||
if(m_gpio_pins_isSet){
|
||||
isObjectUpdated = true; break;
|
||||
}
|
||||
if(m_use_reverse_api_isSet){
|
||||
isObjectUpdated = true; break;
|
||||
}
|
||||
|
@ -81,6 +81,12 @@ public:
|
||||
qint64 getTransverterDeltaFrequency();
|
||||
void setTransverterDeltaFrequency(qint64 transverter_delta_frequency);
|
||||
|
||||
qint32 getGpioDir();
|
||||
void setGpioDir(qint32 gpio_dir);
|
||||
|
||||
qint32 getGpioPins();
|
||||
void setGpioPins(qint32 gpio_pins);
|
||||
|
||||
qint32 getUseReverseApi();
|
||||
void setUseReverseApi(qint32 use_reverse_api);
|
||||
|
||||
@ -136,6 +142,12 @@ private:
|
||||
qint64 transverter_delta_frequency;
|
||||
bool m_transverter_delta_frequency_isSet;
|
||||
|
||||
qint32 gpio_dir;
|
||||
bool m_gpio_dir_isSet;
|
||||
|
||||
qint32 gpio_pins;
|
||||
bool m_gpio_pins_isSet;
|
||||
|
||||
qint32 use_reverse_api;
|
||||
bool m_use_reverse_api_isSet;
|
||||
|
||||
|
@ -48,6 +48,10 @@ SWGUSRPOutputSettings::SWGUSRPOutputSettings() {
|
||||
m_transverter_mode_isSet = false;
|
||||
transverter_delta_frequency = 0L;
|
||||
m_transverter_delta_frequency_isSet = false;
|
||||
gpio_dir = 0;
|
||||
m_gpio_dir_isSet = false;
|
||||
gpio_pins = 0;
|
||||
m_gpio_pins_isSet = false;
|
||||
use_reverse_api = 0;
|
||||
m_use_reverse_api_isSet = false;
|
||||
reverse_api_address = nullptr;
|
||||
@ -84,6 +88,10 @@ SWGUSRPOutputSettings::init() {
|
||||
m_transverter_mode_isSet = false;
|
||||
transverter_delta_frequency = 0L;
|
||||
m_transverter_delta_frequency_isSet = false;
|
||||
gpio_dir = 0;
|
||||
m_gpio_dir_isSet = false;
|
||||
gpio_pins = 0;
|
||||
m_gpio_pins_isSet = false;
|
||||
use_reverse_api = 0;
|
||||
m_use_reverse_api_isSet = false;
|
||||
reverse_api_address = new QString("");
|
||||
@ -111,6 +119,8 @@ SWGUSRPOutputSettings::cleanup() {
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
if(reverse_api_address != nullptr) {
|
||||
delete reverse_api_address;
|
||||
}
|
||||
@ -149,6 +159,10 @@ SWGUSRPOutputSettings::fromJsonObject(QJsonObject &pJson) {
|
||||
|
||||
::SWGSDRangel::setValue(&transverter_delta_frequency, pJson["transverterDeltaFrequency"], "qint64", "");
|
||||
|
||||
::SWGSDRangel::setValue(&gpio_dir, pJson["gpioDir"], "qint32", "");
|
||||
|
||||
::SWGSDRangel::setValue(&gpio_pins, pJson["gpioPins"], "qint32", "");
|
||||
|
||||
::SWGSDRangel::setValue(&use_reverse_api, pJson["useReverseAPI"], "qint32", "");
|
||||
|
||||
::SWGSDRangel::setValue(&reverse_api_address, pJson["reverseAPIAddress"], "QString", "QString");
|
||||
@ -203,6 +217,12 @@ SWGUSRPOutputSettings::asJsonObject() {
|
||||
if(m_transverter_delta_frequency_isSet){
|
||||
obj->insert("transverterDeltaFrequency", QJsonValue(transverter_delta_frequency));
|
||||
}
|
||||
if(m_gpio_dir_isSet){
|
||||
obj->insert("gpioDir", QJsonValue(gpio_dir));
|
||||
}
|
||||
if(m_gpio_pins_isSet){
|
||||
obj->insert("gpioPins", QJsonValue(gpio_pins));
|
||||
}
|
||||
if(m_use_reverse_api_isSet){
|
||||
obj->insert("useReverseAPI", QJsonValue(use_reverse_api));
|
||||
}
|
||||
@ -319,6 +339,26 @@ SWGUSRPOutputSettings::setTransverterDeltaFrequency(qint64 transverter_delta_fre
|
||||
this->m_transverter_delta_frequency_isSet = true;
|
||||
}
|
||||
|
||||
qint32
|
||||
SWGUSRPOutputSettings::getGpioDir() {
|
||||
return gpio_dir;
|
||||
}
|
||||
void
|
||||
SWGUSRPOutputSettings::setGpioDir(qint32 gpio_dir) {
|
||||
this->gpio_dir = gpio_dir;
|
||||
this->m_gpio_dir_isSet = true;
|
||||
}
|
||||
|
||||
qint32
|
||||
SWGUSRPOutputSettings::getGpioPins() {
|
||||
return gpio_pins;
|
||||
}
|
||||
void
|
||||
SWGUSRPOutputSettings::setGpioPins(qint32 gpio_pins) {
|
||||
this->gpio_pins = gpio_pins;
|
||||
this->m_gpio_pins_isSet = true;
|
||||
}
|
||||
|
||||
qint32
|
||||
SWGUSRPOutputSettings::getUseReverseApi() {
|
||||
return use_reverse_api;
|
||||
@ -394,6 +434,12 @@ SWGUSRPOutputSettings::isSet(){
|
||||
if(m_transverter_delta_frequency_isSet){
|
||||
isObjectUpdated = true; break;
|
||||
}
|
||||
if(m_gpio_dir_isSet){
|
||||
isObjectUpdated = true; break;
|
||||
}
|
||||
if(m_gpio_pins_isSet){
|
||||
isObjectUpdated = true; break;
|
||||
}
|
||||
if(m_use_reverse_api_isSet){
|
||||
isObjectUpdated = true; break;
|
||||
}
|
||||
|
@ -72,6 +72,12 @@ public:
|
||||
qint64 getTransverterDeltaFrequency();
|
||||
void setTransverterDeltaFrequency(qint64 transverter_delta_frequency);
|
||||
|
||||
qint32 getGpioDir();
|
||||
void setGpioDir(qint32 gpio_dir);
|
||||
|
||||
qint32 getGpioPins();
|
||||
void setGpioPins(qint32 gpio_pins);
|
||||
|
||||
qint32 getUseReverseApi();
|
||||
void setUseReverseApi(qint32 use_reverse_api);
|
||||
|
||||
@ -118,6 +124,12 @@ private:
|
||||
qint64 transverter_delta_frequency;
|
||||
bool m_transverter_delta_frequency_isSet;
|
||||
|
||||
qint32 gpio_dir;
|
||||
bool m_gpio_dir_isSet;
|
||||
|
||||
qint32 gpio_pins;
|
||||
bool m_gpio_pins_isSet;
|
||||
|
||||
qint32 use_reverse_api;
|
||||
bool m_use_reverse_api_isSet;
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user