diff --git a/sdrbase/resources/res.qrc b/sdrbase/resources/res.qrc index 36e34505d..be9edc854 100644 --- a/sdrbase/resources/res.qrc +++ b/sdrbase/resources/res.qrc @@ -27,6 +27,7 @@ webapi/doc/swagger/include/SDRDaemonSource.yaml webapi/doc/swagger/include/SDRDaemonSink.yaml webapi/doc/swagger/include/SDRPlay.yaml + webapi/doc/swagger/include/SoapySDR.yaml webapi/doc/swagger/include/SSBDemod.yaml webapi/doc/swagger/include/SSBMod.yaml webapi/doc/swagger/include/Structs.yaml diff --git a/sdrbase/resources/webapi/doc/html2/index.html b/sdrbase/resources/webapi/doc/html2/index.html index 61c526a87..0627afc11 100644 --- a/sdrbase/resources/webapi/doc/html2/index.html +++ b/sdrbase/resources/webapi/doc/html2/index.html @@ -1031,6 +1031,20 @@ margin-bottom: 20px; } }, "description" : "Airspy" +}; + defs.ArgInfo = { + "properties" : { + "key" : { + "type" : "string" + }, + "valueType" : { + "type" : "string", + "enum" : [ "bool", "int", "float", "string" ] + }, + "valueString" : { + "type" : "string" + } + } }; defs.AudioDevices = { "required" : [ "nbInputDevices", "nbOutputDevices" ], @@ -1636,6 +1650,19 @@ margin-bottom: 20px; } }, "description" : "All channels detailed information" +}; + defs.Complex = { + "properties" : { + "real" : { + "type" : "number", + "format" : "float" + }, + "imag" : { + "type" : "number", + "format" : "float" + } + }, + "description" : "A complex number" }; defs.DSDDemodReport = { "properties" : { @@ -1996,6 +2023,12 @@ margin-bottom: 20px; }, "sdrPlayReport" : { "$ref" : "#/definitions/SDRPlayReport" + }, + "soapySDRInputReport" : { + "$ref" : "#/definitions/SoapySDRReport" + }, + "soapySDROutputReport" : { + "$ref" : "#/definitions/SoapySDRReport" } }, "description" : "Base device report. Only the device report corresponding to the device specified in the deviceHwType is or should be present." @@ -2112,6 +2145,12 @@ margin-bottom: 20px; "sdrPlaySettings" : { "$ref" : "#/definitions/SDRPlaySettings" }, + "soapySDRInputSettings" : { + "$ref" : "#/definitions/SoapySDRInputSettings" + }, + "soapySDROutputSettings" : { + "$ref" : "#/definitions/SoapySDROutputSettings" + }, "testSourceSettings" : { "$ref" : "#/definitions/TestSourceSettings" } @@ -3331,7 +3370,24 @@ margin-bottom: 20px; "type" : "integer" } }, - "description" : "An arbitrary range of values" + "description" : "An arbitrary range of integer values" +}; + defs.RangeFloat = { + "properties" : { + "min" : { + "type" : "number", + "format" : "float" + }, + "max" : { + "type" : "number", + "format" : "float" + }, + "step" : { + "type" : "number", + "format" : "float" + } + }, + "description" : "An arbitrary range of floating point values" }; defs.RtlSdrReport = { "properties" : { @@ -3828,6 +3884,275 @@ margin-bottom: 20px; } }, "description" : "Information about a logical device available from an attached hardware device that can be used as a sampling device" +}; + defs.SoapySDRFrequencySetting = { + "properties" : { + "name" : { + "type" : "string" + }, + "ranges" : { + "type" : "array", + "items" : { + "$ref" : "#/definitions/RangeFloat" + } + } + }, + "description" : "A named frequency setting specified by a range list" +}; + defs.SoapySDRGainSetting = { + "properties" : { + "name" : { + "type" : "string" + }, + "range" : { + "$ref" : "#/definitions/RangeFloat" + } + }, + "description" : "A named gain setting specified by its range" +}; + defs.SoapySDRInputSettings = { + "properties" : { + "centerFrequency" : { + "type" : "integer", + "format" : "int64" + }, + "LOppmTenths" : { + "type" : "integer" + }, + "devSampleRate" : { + "type" : "integer" + }, + "log2Decim" : { + "type" : "integer" + }, + "fcPos" : { + "type" : "integer" + }, + "softDCCorrection" : { + "type" : "integer", + "description" : "boolean not zero for true" + }, + "softIQCorrection" : { + "type" : "integer", + "description" : "boolean not zero for true" + }, + "transverterMode" : { + "type" : "integer", + "description" : "boolean not zero for true" + }, + "transverterDeltaFrequency" : { + "type" : "integer", + "format" : "int64" + }, + "fileRecordName" : { + "type" : "string" + }, + "antenna" : { + "type" : "string" + }, + "bandwidth" : { + "type" : "integer" + }, + "tunableElements" : { + "type" : "array", + "items" : { + "$ref" : "#/definitions/ArgInfo" + } + }, + "globalGain" : { + "type" : "integer" + }, + "individualGains" : { + "type" : "array", + "items" : { + "$ref" : "#/definitions/ArgInfo" + } + }, + "autoGain" : { + "type" : "integer", + "description" : "boolean not zero for true" + }, + "autoDCCorrection" : { + "type" : "integer", + "description" : "boolean not zero for true" + }, + "autoIQCorrection" : { + "type" : "integer", + "description" : "boolean not zero for true" + }, + "dcCorrection" : { + "$ref" : "#/definitions/Complex" + }, + "iqCorrection" : { + "$ref" : "#/definitions/Complex" + }, + "streamArgSettings" : { + "type" : "array", + "items" : { + "$ref" : "#/definitions/ArgInfo" + } + }, + "deviceArgSettings" : { + "type" : "array", + "items" : { + "$ref" : "#/definitions/ArgInfo" + } + } + }, + "description" : "SoapySDR" +}; + defs.SoapySDROutputSettings = { + "properties" : { + "centerFrequency" : { + "type" : "integer", + "format" : "int64" + }, + "LOppmTenths" : { + "type" : "integer" + }, + "devSampleRate" : { + "type" : "integer" + }, + "log2Interp" : { + "type" : "integer" + }, + "transverterMode" : { + "type" : "integer", + "description" : "boolean not zero for true" + }, + "transverterDeltaFrequency" : { + "type" : "integer", + "format" : "int64" + }, + "antenna" : { + "type" : "string" + }, + "bandwidth" : { + "type" : "integer" + }, + "tunableElements" : { + "type" : "array", + "items" : { + "$ref" : "#/definitions/ArgInfo" + } + }, + "globalGain" : { + "type" : "integer" + }, + "individualGains" : { + "type" : "array", + "items" : { + "$ref" : "#/definitions/ArgInfo" + } + }, + "autoGain" : { + "type" : "integer", + "description" : "boolean not zero for true" + }, + "autoDCCorrection" : { + "type" : "integer", + "description" : "boolean not zero for true" + }, + "autoIQCorrection" : { + "type" : "integer", + "description" : "boolean not zero for true" + }, + "dcCorrection" : { + "$ref" : "#/definitions/Complex" + }, + "iqCorrection" : { + "$ref" : "#/definitions/Complex" + }, + "streamArgSettings" : { + "type" : "array", + "items" : { + "$ref" : "#/definitions/ArgInfo" + } + }, + "deviceArgSettings" : { + "type" : "array", + "items" : { + "$ref" : "#/definitions/ArgInfo" + } + } + }, + "description" : "SoapySDR" +}; + defs.SoapySDRReport = { + "properties" : { + "deviceSettingsArgs" : { + "type" : "array", + "items" : { + "$ref" : "#/definitions/ArgInfo" + } + }, + "streamSettingsArgs" : { + "type" : "array", + "items" : { + "$ref" : "#/definitions/ArgInfo" + } + }, + "hasDCAutoCorrection" : { + "type" : "integer", + "description" : "boolean not zero for true" + }, + "hasDCOffsetValue" : { + "type" : "integer", + "description" : "boolean not zero for true" + }, + "hasIQBalanceValue" : { + "type" : "integer", + "description" : "boolean not zero for true" + }, + "hasFrequencyCorrectionValue" : { + "type" : "integer", + "description" : "boolean not zero for true" + }, + "antennas" : { + "type" : "array", + "items" : { + "type" : "string" + } + }, + "hasAGC" : { + "type" : "integer", + "description" : "boolean not zero for true" + }, + "gainRange" : { + "$ref" : "#/definitions/RangeFloat" + }, + "gainSettings" : { + "type" : "array", + "items" : { + "$ref" : "#/definitions/SoapySDRGainSetting" + } + }, + "frequencySettings" : { + "type" : "array", + "items" : { + "$ref" : "#/definitions/SoapySDRFrequencySetting" + } + }, + "frequencySettingsArgs" : { + "type" : "array", + "items" : { + "$ref" : "#/definitions/ArgInfo" + } + }, + "ratesRanges" : { + "type" : "array", + "items" : { + "$ref" : "#/definitions/RangeFloat" + } + }, + "bandwidthsRanges" : { + "type" : "array", + "items" : { + "$ref" : "#/definitions/RangeFloat" + } + } + }, + "description" : "SoapySDR" }; defs.SuccessResponse = { "required" : [ "message" ], @@ -4383,7 +4708,7 @@ margin-bottom: 20px;