SoapySDR  0.8.0-gab626068
Vendor and platform neutral SDR interface library
Device.h
Go to the documentation of this file.
1 
17 #pragma once
18 #include <SoapySDR/Config.h>
19 #include <SoapySDR/Types.h>
20 #include <SoapySDR/Constants.h>
21 #include <SoapySDR/Errors.h>
22 #include <SoapySDR/Device.h>
23 
24 #ifdef __cplusplus
25 extern "C" {
26 #endif
27 
30 
33 
43 
51 SOAPY_SDR_API const char *SoapySDRDevice_lastError(void);
52 
60 
68 SOAPY_SDR_API SoapySDRKwargs *SoapySDRDevice_enumerateStrArgs(const char *args, size_t *length);
69 
80 
91 
99 
100 /*******************************************************************
101  * Parallel support
102  ******************************************************************/
103 
113 SOAPY_SDR_API SoapySDRDevice **SoapySDRDevice_make_list(const SoapySDRKwargs *argsList, const size_t length);
114 
124 SOAPY_SDR_API SoapySDRDevice **SoapySDRDevice_make_listStrArgs(const char* const *argsList, const size_t length);
125 
136 SOAPY_SDR_API int SoapySDRDevice_unmake_list(SoapySDRDevice **devices, const size_t length);
137 
138 /*******************************************************************
139  * Identification API
140  ******************************************************************/
141 
149 
157 
167 
168 /*******************************************************************
169  * Channels API
170  ******************************************************************/
171 
180 SOAPY_SDR_API int SoapySDRDevice_setFrontendMapping(SoapySDRDevice *device, const int direction, const char *mapping);
181 
188 SOAPY_SDR_API char *SoapySDRDevice_getFrontendMapping(const SoapySDRDevice *device, const int direction);
189 
196 SOAPY_SDR_API size_t SoapySDRDevice_getNumChannels(const SoapySDRDevice *device, const int direction);
197 
205 SOAPY_SDR_API SoapySDRKwargs SoapySDRDevice_getChannelInfo(const SoapySDRDevice *device, const int direction, const size_t channel);
206 
214 SOAPY_SDR_API bool SoapySDRDevice_getFullDuplex(const SoapySDRDevice *device, const int direction, const size_t channel);
215 
216 /*******************************************************************
217  * Stream API
218  ******************************************************************/
219 
229 SOAPY_SDR_API char **SoapySDRDevice_getStreamFormats(const SoapySDRDevice *device, const int direction, const size_t channel, size_t *length);
230 
241 SOAPY_SDR_API char *SoapySDRDevice_getNativeStreamFormat(const SoapySDRDevice *device, const int direction, const size_t channel, double *fullScale);
242 
251 SOAPY_SDR_API SoapySDRArgInfo *SoapySDRDevice_getStreamArgsInfo(const SoapySDRDevice *device, const int direction, const size_t channel, size_t *length);
252 
307  const int direction,
308  const char *format,
309  const size_t *channels,
310  const size_t numChans,
311  const SoapySDRKwargs *args);
312 
320 
332 
352  SoapySDRStream *stream,
353  const int flags,
354  const long long timeNs,
355  const size_t numElems);
356 
373  SoapySDRStream *stream,
374  const int flags,
375  const long long timeNs);
376 
398  SoapySDRStream *stream,
399  void * const *buffs,
400  const size_t numElems,
401  int *flags,
402  long long *timeNs,
403  const long timeoutUs);
404 
426  SoapySDRStream *stream,
427  const void * const *buffs,
428  const size_t numElems,
429  int *flags,
430  const long long timeNs,
431  const long timeoutUs);
432 
455  SoapySDRStream *stream,
456  size_t *chanMask,
457  int *flags,
458  long long *timeNs,
459  const long timeoutUs);
460 
461 /*******************************************************************
462  * Direct buffer access API
463  ******************************************************************/
464 
476 
491 SOAPY_SDR_API int SoapySDRDevice_getDirectAccessBufferAddrs(SoapySDRDevice *device, SoapySDRStream *stream, const size_t handle, void **buffs);
492 
515  SoapySDRStream *stream,
516  size_t *handle,
517  const void **buffs,
518  int *flags,
519  long long *timeNs,
520  const long timeoutUs);
521 
531  SoapySDRStream *stream,
532  const size_t handle);
533 
554  SoapySDRStream *stream,
555  size_t *handle,
556  void **buffs,
557  const long timeoutUs);
558 
576  SoapySDRStream *stream,
577  const size_t handle,
578  const size_t numElems,
579  int *flags,
580  const long long timeNs);
581 
582 /*******************************************************************
583  * Antenna API
584  ******************************************************************/
585 
594 SOAPY_SDR_API char **SoapySDRDevice_listAntennas(const SoapySDRDevice *device, const int direction, const size_t channel, size_t *length);
595 
604 SOAPY_SDR_API int SoapySDRDevice_setAntenna(SoapySDRDevice *device, const int direction, const size_t channel, const char *name);
605 
613 SOAPY_SDR_API char *SoapySDRDevice_getAntenna(const SoapySDRDevice *device, const int direction, const size_t channel);
614 
615 /*******************************************************************
616  * Frontend corrections API
617  ******************************************************************/
618 
626 SOAPY_SDR_API bool SoapySDRDevice_hasDCOffsetMode(const SoapySDRDevice *device, const int direction, const size_t channel);
627 
636 SOAPY_SDR_API int SoapySDRDevice_setDCOffsetMode(SoapySDRDevice *device, const int direction, const size_t channel, const bool automatic);
637 
645 SOAPY_SDR_API bool SoapySDRDevice_getDCOffsetMode(const SoapySDRDevice *device, const int direction, const size_t channel);
646 
654 SOAPY_SDR_API bool SoapySDRDevice_hasDCOffset(const SoapySDRDevice *device, const int direction, const size_t channel);
655 
665 SOAPY_SDR_API int SoapySDRDevice_setDCOffset(SoapySDRDevice *device, const int direction, const size_t channel, const double offsetI, const double offsetQ);
666 
676 SOAPY_SDR_API int SoapySDRDevice_getDCOffset(const SoapySDRDevice *device, const int direction, const size_t channel, double *offsetI, double *offsetQ);
677 
685 SOAPY_SDR_API bool SoapySDRDevice_hasIQBalance(const SoapySDRDevice *device, const int direction, const size_t channel);
686 
696 SOAPY_SDR_API int SoapySDRDevice_setIQBalance(SoapySDRDevice *device, const int direction, const size_t channel, const double balanceI, const double balanceQ);
697 
707 SOAPY_SDR_API int SoapySDRDevice_getIQBalance(const SoapySDRDevice *device, const int direction, const size_t channel, double *balanceI, double *balanceQ);
708 
716 SOAPY_SDR_API bool SoapySDRDevice_hasIQBalanceMode(const SoapySDRDevice *device, const int direction, const size_t channel);
717 
726 SOAPY_SDR_API int SoapySDRDevice_setIQBalanceMode(SoapySDRDevice *device, const int direction, const size_t channel, const bool automatic);
727 
735 SOAPY_SDR_API bool SoapySDRDevice_getIQBalanceMode(const SoapySDRDevice *device, const int direction, const size_t channel);
736 
744 SOAPY_SDR_API bool SoapySDRDevice_hasFrequencyCorrection(const SoapySDRDevice *device, const int direction, const size_t channel);
745 
754 SOAPY_SDR_API int SoapySDRDevice_setFrequencyCorrection(SoapySDRDevice *device, const int direction, const size_t channel, const double value);
755 
763 SOAPY_SDR_API double SoapySDRDevice_getFrequencyCorrection(const SoapySDRDevice *device, const int direction, const size_t channel);
764 
765 /*******************************************************************
766  * Gain API
767  ******************************************************************/
768 
778 SOAPY_SDR_API char **SoapySDRDevice_listGains(const SoapySDRDevice *device, const int direction, const size_t channel, size_t *length);
779 
787 SOAPY_SDR_API bool SoapySDRDevice_hasGainMode(const SoapySDRDevice *device, const int direction, const size_t channel);
788 
797 SOAPY_SDR_API int SoapySDRDevice_setGainMode(SoapySDRDevice *device, const int direction, const size_t channel, const bool automatic);
798 
806 SOAPY_SDR_API bool SoapySDRDevice_getGainMode(const SoapySDRDevice *device, const int direction, const size_t channel);
807 
817 SOAPY_SDR_API int SoapySDRDevice_setGain(SoapySDRDevice *device, const int direction, const size_t channel, const double value);
818 
828 SOAPY_SDR_API int SoapySDRDevice_setGainElement(SoapySDRDevice *device, const int direction, const size_t channel, const char *name, const double value);
829 
837 SOAPY_SDR_API double SoapySDRDevice_getGain(const SoapySDRDevice *device, const int direction, const size_t channel);
838 
847 SOAPY_SDR_API double SoapySDRDevice_getGainElement(const SoapySDRDevice *device, const int direction, const size_t channel, const char *name);
848 
856 SOAPY_SDR_API SoapySDRRange SoapySDRDevice_getGainRange(const SoapySDRDevice *device, const int direction, const size_t channel);
857 
866 SOAPY_SDR_API SoapySDRRange SoapySDRDevice_getGainElementRange(const SoapySDRDevice *device, const int direction, const size_t channel, const char *name);
867 
868 /*******************************************************************
869  * Frequency API
870  ******************************************************************/
871 
901 SOAPY_SDR_API int SoapySDRDevice_setFrequency(SoapySDRDevice *device, const int direction, const size_t channel, const double frequency, const SoapySDRKwargs *args);
902 
921 SOAPY_SDR_API int SoapySDRDevice_setFrequencyComponent(SoapySDRDevice *device, const int direction, const size_t channel, const char *name, const double frequency, const SoapySDRKwargs *args);
922 
932 SOAPY_SDR_API double SoapySDRDevice_getFrequency(const SoapySDRDevice *device, const int direction, const size_t channel);
933 
942 SOAPY_SDR_API double SoapySDRDevice_getFrequencyComponent(const SoapySDRDevice *device, const int direction, const size_t channel, const char *name);
943 
953 SOAPY_SDR_API char **SoapySDRDevice_listFrequencies(const SoapySDRDevice *device, const int direction, const size_t channel, size_t *length);
954 
963 SOAPY_SDR_API SoapySDRRange *SoapySDRDevice_getFrequencyRange(const SoapySDRDevice *device, const int direction, const size_t channel, size_t *length);
964 
974 SOAPY_SDR_API SoapySDRRange *SoapySDRDevice_getFrequencyRangeComponent(const SoapySDRDevice *device, const int direction, const size_t channel, const char *name, size_t *length);
975 
984 SOAPY_SDR_API SoapySDRArgInfo *SoapySDRDevice_getFrequencyArgsInfo(const SoapySDRDevice *device, const int direction, const size_t channel, size_t *length);
985 
986 /*******************************************************************
987  * Sample Rate API
988  ******************************************************************/
989 
998 SOAPY_SDR_API int SoapySDRDevice_setSampleRate(SoapySDRDevice *device, const int direction, const size_t channel, const double rate);
999 
1007 SOAPY_SDR_API double SoapySDRDevice_getSampleRate(const SoapySDRDevice *device, const int direction, const size_t channel);
1008 
1018 SOAPY_SDR_API double *SoapySDRDevice_listSampleRates(const SoapySDRDevice *device, const int direction, const size_t channel, size_t *length);
1019 
1028 SOAPY_SDR_API SoapySDRRange *SoapySDRDevice_getSampleRateRange(const SoapySDRDevice *device, const int direction, const size_t channel, size_t *length);
1029 
1030 /*******************************************************************
1031  * Bandwidth API
1032  ******************************************************************/
1033 
1042 SOAPY_SDR_API int SoapySDRDevice_setBandwidth(SoapySDRDevice *device, const int direction, const size_t channel, const double bw);
1043 
1051 SOAPY_SDR_API double SoapySDRDevice_getBandwidth(const SoapySDRDevice *device, const int direction, const size_t channel);
1052 
1062 SOAPY_SDR_API double *SoapySDRDevice_listBandwidths(const SoapySDRDevice *device, const int direction, const size_t channel, size_t *length);
1063 
1072 SOAPY_SDR_API SoapySDRRange *SoapySDRDevice_getBandwidthRange(const SoapySDRDevice *device, const int direction, const size_t channel, size_t *length);
1073 
1074 /*******************************************************************
1075  * Clocking API
1076  ******************************************************************/
1077 
1084 SOAPY_SDR_API int SoapySDRDevice_setMasterClockRate(SoapySDRDevice *device, const double rate);
1085 
1092 
1100 
1107 SOAPY_SDR_API int SoapySDRDevice_setReferenceClockRate(SoapySDRDevice *device, const double rate);
1108 
1115 
1123 
1130 SOAPY_SDR_API char **SoapySDRDevice_listClockSources(const SoapySDRDevice *device, size_t *length);
1131 
1138 SOAPY_SDR_API int SoapySDRDevice_setClockSource(SoapySDRDevice *device, const char *source);
1139 
1146 
1147 /*******************************************************************
1148  * Time API
1149  ******************************************************************/
1150 
1157 SOAPY_SDR_API char **SoapySDRDevice_listTimeSources(const SoapySDRDevice *device, size_t *length);
1158 
1165 SOAPY_SDR_API int SoapySDRDevice_setTimeSource(SoapySDRDevice *device, const char *source);
1166 
1173 
1180 SOAPY_SDR_API bool SoapySDRDevice_hasHardwareTime(const SoapySDRDevice *device, const char *what);
1181 
1189 SOAPY_SDR_API long long SoapySDRDevice_getHardwareTime(const SoapySDRDevice *device, const char *what);
1190 
1199 SOAPY_SDR_API int SoapySDRDevice_setHardwareTime(SoapySDRDevice *device, const long long timeNs, const char *what);
1200 
1211 SOAPY_SDR_API int SoapySDRDevice_setCommandTime(SoapySDRDevice *device, const long long timeNs, const char *what);
1212 
1213 /*******************************************************************
1214  * Sensor API
1215  ******************************************************************/
1216 
1224 SOAPY_SDR_API char **SoapySDRDevice_listSensors(const SoapySDRDevice *device, size_t *length);
1225 
1234 
1243 SOAPY_SDR_API char *SoapySDRDevice_readSensor(const SoapySDRDevice *device, const char *key);
1244 
1254 SOAPY_SDR_API char **SoapySDRDevice_listChannelSensors(const SoapySDRDevice *device, const int direction, const size_t channel, size_t *length);
1255 
1265 SOAPY_SDR_API SoapySDRArgInfo SoapySDRDevice_getChannelSensorInfo(const SoapySDRDevice *device, const int direction, const size_t channel, const char *key);
1266 
1277 SOAPY_SDR_API char *SoapySDRDevice_readChannelSensor(const SoapySDRDevice *device, const int direction, const size_t channel, const char *key);
1278 
1279 /*******************************************************************
1280  * Register API
1281  ******************************************************************/
1282 
1289 SOAPY_SDR_API char **SoapySDRDevice_listRegisterInterfaces(const SoapySDRDevice *device, size_t *length);
1290 
1301 SOAPY_SDR_API int SoapySDRDevice_writeRegister(SoapySDRDevice *device, const char *name, const unsigned addr, const unsigned value);
1302 
1310 SOAPY_SDR_API unsigned SoapySDRDevice_readRegister(const SoapySDRDevice *device, const char *name, const unsigned addr);
1311 
1323 SOAPY_SDR_API int SoapySDRDevice_writeRegisters(SoapySDRDevice *device, const char *name, const unsigned addr, const unsigned *value, const size_t length);
1324 
1335 SOAPY_SDR_API unsigned *SoapySDRDevice_readRegisters(const SoapySDRDevice *device, const char *name, const unsigned addr, size_t *length);
1336 
1337 /*******************************************************************
1338  * Settings API
1339  ******************************************************************/
1340 
1348 
1357 SOAPY_SDR_API int SoapySDRDevice_writeSetting(SoapySDRDevice *device, const char *key, const char *value);
1358 
1365 SOAPY_SDR_API char *SoapySDRDevice_readSetting(const SoapySDRDevice *device, const char *key);
1366 
1375 SOAPY_SDR_API SoapySDRArgInfo *SoapySDRDevice_getChannelSettingInfo(const SoapySDRDevice *device, const int direction, const size_t channel, size_t *length);
1376 
1387 SOAPY_SDR_API int SoapySDRDevice_writeChannelSetting(SoapySDRDevice *device, const int direction, const size_t channel, const char *key, const char *value);
1388 
1397 SOAPY_SDR_API char *SoapySDRDevice_readChannelSetting(const SoapySDRDevice *device, const int direction, const size_t channel, const char *key);
1398 
1399 /*******************************************************************
1400  * GPIO API
1401  ******************************************************************/
1402 
1408 SOAPY_SDR_API char **SoapySDRDevice_listGPIOBanks(const SoapySDRDevice *device, size_t *length);
1409 
1417 SOAPY_SDR_API int SoapySDRDevice_writeGPIO(SoapySDRDevice *device, const char *bank, const unsigned value);
1418 
1427 SOAPY_SDR_API int SoapySDRDevice_writeGPIOMasked(SoapySDRDevice *device, const char *bank, const unsigned value, const unsigned mask);
1428 
1435 SOAPY_SDR_API unsigned SoapySDRDevice_readGPIO(const SoapySDRDevice *device, const char *bank);
1436 
1445 SOAPY_SDR_API int SoapySDRDevice_writeGPIODir(SoapySDRDevice *device, const char *bank, const unsigned dir);
1446 
1456 SOAPY_SDR_API int SoapySDRDevice_writeGPIODirMasked(SoapySDRDevice *device, const char *bank, const unsigned dir, const unsigned mask);
1457 
1465 SOAPY_SDR_API unsigned SoapySDRDevice_readGPIODir(const SoapySDRDevice *device, const char *bank);
1466 
1467 /*******************************************************************
1468  * I2C API
1469  ******************************************************************/
1470 
1481 SOAPY_SDR_API int SoapySDRDevice_writeI2C(SoapySDRDevice *device, const int addr, const char *data, const size_t numBytes);
1482 
1494 SOAPY_SDR_API char *SoapySDRDevice_readI2C(SoapySDRDevice *device, const int addr, size_t *numBytes);
1495 
1496 /*******************************************************************
1497  * SPI API
1498  ******************************************************************/
1499 
1515 SOAPY_SDR_API unsigned SoapySDRDevice_transactSPI(SoapySDRDevice *device, const int addr, const unsigned data, const size_t numBits);
1516 
1517 /*******************************************************************
1518  * UART API
1519  ******************************************************************/
1520 
1527 SOAPY_SDR_API char **SoapySDRDevice_listUARTs(const SoapySDRDevice *device, size_t *length);
1528 
1538 SOAPY_SDR_API int SoapySDRDevice_writeUART(SoapySDRDevice *device, const char *which, const char *data);
1539 
1549 SOAPY_SDR_API char *SoapySDRDevice_readUART(const SoapySDRDevice *device, const char *which, const long timeoutUs);
1550 
1551 
1552 /*******************************************************************
1553  * Native Access API
1554  ******************************************************************/
1555 
1564 
1565 #ifdef __cplusplus
1566 }
1567 #endif
SoapySDRDevice_getFrequencyRangeComponent
SOAPY_SDR_API SoapySDRRange * SoapySDRDevice_getFrequencyRangeComponent(const SoapySDRDevice *device, const int direction, const size_t channel, const char *name, size_t *length)
SoapySDRDevice_getClockSource
SOAPY_SDR_API char * SoapySDRDevice_getClockSource(const SoapySDRDevice *device)
SOAPY_SDR_API
#define SOAPY_SDR_API
Definition: Config.h:41
SoapySDRDevice_getReferenceClockRate
SOAPY_SDR_API double SoapySDRDevice_getReferenceClockRate(const SoapySDRDevice *device)
SoapySDRDevice_lastStatus
SOAPY_SDR_API int SoapySDRDevice_lastStatus(void)
SoapySDRDevice_writeChannelSetting
SOAPY_SDR_API int SoapySDRDevice_writeChannelSetting(SoapySDRDevice *device, const int direction, const size_t channel, const char *key, const char *value)
SoapySDRDevice_setGainMode
SOAPY_SDR_API int SoapySDRDevice_setGainMode(SoapySDRDevice *device, const int direction, const size_t channel, const bool automatic)
Device.h
SoapySDRDevice_hasIQBalance
SOAPY_SDR_API bool SoapySDRDevice_hasIQBalance(const SoapySDRDevice *device, const int direction, const size_t channel)
SoapySDRDevice_make
SOAPY_SDR_API SoapySDRDevice * SoapySDRDevice_make(const SoapySDRKwargs *args)
SoapySDRDevice_readRegisters
SOAPY_SDR_API unsigned * SoapySDRDevice_readRegisters(const SoapySDRDevice *device, const char *name, const unsigned addr, size_t *length)
SoapySDRDevice_releaseReadBuffer
SOAPY_SDR_API void SoapySDRDevice_releaseReadBuffer(SoapySDRDevice *device, SoapySDRStream *stream, const size_t handle)
SoapySDRDevice_writeGPIODirMasked
SOAPY_SDR_API int SoapySDRDevice_writeGPIODirMasked(SoapySDRDevice *device, const char *bank, const unsigned dir, const unsigned mask)
SoapySDRDevice_getReferenceClockRates
SOAPY_SDR_API SoapySDRRange * SoapySDRDevice_getReferenceClockRates(const SoapySDRDevice *device, size_t *length)
SoapySDRDevice_listBandwidths
SOAPY_SDR_API double * SoapySDRDevice_listBandwidths(const SoapySDRDevice *device, const int direction, const size_t channel, size_t *length)
SoapySDRDevice_getGainElement
SOAPY_SDR_API double SoapySDRDevice_getGainElement(const SoapySDRDevice *device, const int direction, const size_t channel, const char *name)
SoapySDRStream
struct SoapySDRStream SoapySDRStream
Forward declaration of stream handle.
Definition: Device.h:32
Types.h
SoapySDRDevice_readGPIO
SOAPY_SDR_API unsigned SoapySDRDevice_readGPIO(const SoapySDRDevice *device, const char *bank)
SoapySDRDevice_listUARTs
SOAPY_SDR_API char ** SoapySDRDevice_listUARTs(const SoapySDRDevice *device, size_t *length)
SoapySDRDevice_listSensors
SOAPY_SDR_API char ** SoapySDRDevice_listSensors(const SoapySDRDevice *device, size_t *length)
SoapySDRDevice_getFrequency
SOAPY_SDR_API double SoapySDRDevice_getFrequency(const SoapySDRDevice *device, const int direction, const size_t channel)
SoapySDRDevice_setHardwareTime
SOAPY_SDR_API int SoapySDRDevice_setHardwareTime(SoapySDRDevice *device, const long long timeNs, const char *what)
SoapySDRDevice_getNumChannels
SOAPY_SDR_API size_t SoapySDRDevice_getNumChannels(const SoapySDRDevice *device, const int direction)
SoapySDRDevice_getHardwareKey
SOAPY_SDR_API char * SoapySDRDevice_getHardwareKey(const SoapySDRDevice *device)
SoapySDRDevice_setupStream
SOAPY_SDR_API SoapySDRStream * SoapySDRDevice_setupStream(SoapySDRDevice *device, const int direction, const char *format, const size_t *channels, const size_t numChans, const SoapySDRKwargs *args)
SoapySDRDevice_make_list
SOAPY_SDR_API SoapySDRDevice ** SoapySDRDevice_make_list(const SoapySDRKwargs *argsList, const size_t length)
SoapySDRDevice_readStream
SOAPY_SDR_API int SoapySDRDevice_readStream(SoapySDRDevice *device, SoapySDRStream *stream, void *const *buffs, const size_t numElems, int *flags, long long *timeNs, const long timeoutUs)
SoapySDRDevice_writeGPIODir
SOAPY_SDR_API int SoapySDRDevice_writeGPIODir(SoapySDRDevice *device, const char *bank, const unsigned dir)
SoapySDRDevice_getSampleRateRange
SOAPY_SDR_API SoapySDRRange * SoapySDRDevice_getSampleRateRange(const SoapySDRDevice *device, const int direction, const size_t channel, size_t *length)
SoapySDRDevice_hasDCOffsetMode
SOAPY_SDR_API bool SoapySDRDevice_hasDCOffsetMode(const SoapySDRDevice *device, const int direction, const size_t channel)
SoapySDRDevice_makeStrArgs
SOAPY_SDR_API SoapySDRDevice * SoapySDRDevice_makeStrArgs(const char *args)
SoapySDRDevice_getHardwareInfo
SOAPY_SDR_API SoapySDRKwargs SoapySDRDevice_getHardwareInfo(const SoapySDRDevice *device)
SoapySDRDevice
struct SoapySDRDevice SoapySDRDevice
Forward declaration of device handle.
Definition: Device.h:29
SoapySDRDevice_deactivateStream
SOAPY_SDR_API int SoapySDRDevice_deactivateStream(SoapySDRDevice *device, SoapySDRStream *stream, const int flags, const long long timeNs)
SoapySDRDevice_hasHardwareTime
SOAPY_SDR_API bool SoapySDRDevice_hasHardwareTime(const SoapySDRDevice *device, const char *what)
SoapySDRDevice_writeUART
SOAPY_SDR_API int SoapySDRDevice_writeUART(SoapySDRDevice *device, const char *which, const char *data)
SoapySDRDevice_getDCOffset
SOAPY_SDR_API int SoapySDRDevice_getDCOffset(const SoapySDRDevice *device, const int direction, const size_t channel, double *offsetI, double *offsetQ)
SoapySDRDevice_setFrequencyComponent
SOAPY_SDR_API int SoapySDRDevice_setFrequencyComponent(SoapySDRDevice *device, const int direction, const size_t channel, const char *name, const double frequency, const SoapySDRKwargs *args)
SoapySDRDevice_acquireWriteBuffer
SOAPY_SDR_API int SoapySDRDevice_acquireWriteBuffer(SoapySDRDevice *device, SoapySDRStream *stream, size_t *handle, void **buffs, const long timeoutUs)
SoapySDRDevice_setFrequencyCorrection
SOAPY_SDR_API int SoapySDRDevice_setFrequencyCorrection(SoapySDRDevice *device, const int direction, const size_t channel, const double value)
SoapySDRKwargs
Definition for a key/value string map.
Definition: Types.h:34
SoapySDRDevice_enumerate
SOAPY_SDR_API SoapySDRKwargs * SoapySDRDevice_enumerate(const SoapySDRKwargs *args, size_t *length)
SoapySDRDevice_getStreamFormats
SOAPY_SDR_API char ** SoapySDRDevice_getStreamFormats(const SoapySDRDevice *device, const int direction, const size_t channel, size_t *length)
SoapySDRDevice_setGain
SOAPY_SDR_API int SoapySDRDevice_setGain(SoapySDRDevice *device, const int direction, const size_t channel, const double value)
SoapySDRDevice_getFrequencyComponent
SOAPY_SDR_API double SoapySDRDevice_getFrequencyComponent(const SoapySDRDevice *device, const int direction, const size_t channel, const char *name)
SoapySDRDevice_hasIQBalanceMode
SOAPY_SDR_API bool SoapySDRDevice_hasIQBalanceMode(const SoapySDRDevice *device, const int direction, const size_t channel)
Constants.h
SoapySDRDevice_writeGPIO
SOAPY_SDR_API int SoapySDRDevice_writeGPIO(SoapySDRDevice *device, const char *bank, const unsigned value)
SoapySDRDevice_acquireReadBuffer
SOAPY_SDR_API int SoapySDRDevice_acquireReadBuffer(SoapySDRDevice *device, SoapySDRStream *stream, size_t *handle, const void **buffs, int *flags, long long *timeNs, const long timeoutUs)
SoapySDRDevice_getGainMode
SOAPY_SDR_API bool SoapySDRDevice_getGainMode(const SoapySDRDevice *device, const int direction, const size_t channel)
SoapySDRDevice_getAntenna
SOAPY_SDR_API char * SoapySDRDevice_getAntenna(const SoapySDRDevice *device, const int direction, const size_t channel)
SoapySDRDevice_hasDCOffset
SOAPY_SDR_API bool SoapySDRDevice_hasDCOffset(const SoapySDRDevice *device, const int direction, const size_t channel)
SoapySDRDevice_getMasterClockRates
SOAPY_SDR_API SoapySDRRange * SoapySDRDevice_getMasterClockRates(const SoapySDRDevice *device, size_t *length)
SoapySDRDevice_readSensor
SOAPY_SDR_API char * SoapySDRDevice_readSensor(const SoapySDRDevice *device, const char *key)
SoapySDRDevice_getGainRange
SOAPY_SDR_API SoapySDRRange SoapySDRDevice_getGainRange(const SoapySDRDevice *device, const int direction, const size_t channel)
SoapySDRDevice_listTimeSources
SOAPY_SDR_API char ** SoapySDRDevice_listTimeSources(const SoapySDRDevice *device, size_t *length)
SoapySDRDevice_setCommandTime
SOAPY_SDR_API int SoapySDRDevice_setCommandTime(SoapySDRDevice *device, const long long timeNs, const char *what)
SoapySDRDevice_getBandwidthRange
SOAPY_SDR_API SoapySDRRange * SoapySDRDevice_getBandwidthRange(const SoapySDRDevice *device, const int direction, const size_t channel, size_t *length)
SoapySDRDevice_setClockSource
SOAPY_SDR_API int SoapySDRDevice_setClockSource(SoapySDRDevice *device, const char *source)
SoapySDRDevice_listRegisterInterfaces
SOAPY_SDR_API char ** SoapySDRDevice_listRegisterInterfaces(const SoapySDRDevice *device, size_t *length)
SoapySDRDevice_setAntenna
SOAPY_SDR_API int SoapySDRDevice_setAntenna(SoapySDRDevice *device, const int direction, const size_t channel, const char *name)
SoapySDRDevice_hasFrequencyCorrection
SOAPY_SDR_API bool SoapySDRDevice_hasFrequencyCorrection(const SoapySDRDevice *device, const int direction, const size_t channel)
SoapySDRDevice_setSampleRate
SOAPY_SDR_API int SoapySDRDevice_setSampleRate(SoapySDRDevice *device, const int direction, const size_t channel, const double rate)
SoapySDRDevice_getHardwareTime
SOAPY_SDR_API long long SoapySDRDevice_getHardwareTime(const SoapySDRDevice *device, const char *what)
SoapySDRDevice_getNumDirectAccessBuffers
SOAPY_SDR_API size_t SoapySDRDevice_getNumDirectAccessBuffers(SoapySDRDevice *device, SoapySDRStream *stream)
SoapySDRDevice_listChannelSensors
SOAPY_SDR_API char ** SoapySDRDevice_listChannelSensors(const SoapySDRDevice *device, const int direction, const size_t channel, size_t *length)
SoapySDRDevice_getIQBalanceMode
SOAPY_SDR_API bool SoapySDRDevice_getIQBalanceMode(const SoapySDRDevice *device, const int direction, const size_t channel)
SoapySDRDevice_lastError
const SOAPY_SDR_API char * SoapySDRDevice_lastError(void)
SoapySDRDevice_getMasterClockRate
SOAPY_SDR_API double SoapySDRDevice_getMasterClockRate(const SoapySDRDevice *device)
SoapySDRDevice_setFrontendMapping
SOAPY_SDR_API int SoapySDRDevice_setFrontendMapping(SoapySDRDevice *device, const int direction, const char *mapping)
SoapySDRDevice_getNativeStreamFormat
SOAPY_SDR_API char * SoapySDRDevice_getNativeStreamFormat(const SoapySDRDevice *device, const int direction, const size_t channel, double *fullScale)
SoapySDRRange
Definition for a min/max numeric range.
Definition: Types.h:26
Errors.h
SoapySDRDevice_readChannelSetting
SOAPY_SDR_API char * SoapySDRDevice_readChannelSetting(const SoapySDRDevice *device, const int direction, const size_t channel, const char *key)
SoapySDRDevice_transactSPI
SOAPY_SDR_API unsigned SoapySDRDevice_transactSPI(SoapySDRDevice *device, const int addr, const unsigned data, const size_t numBits)
SoapySDRDevice_enumerateStrArgs
SOAPY_SDR_API SoapySDRKwargs * SoapySDRDevice_enumerateStrArgs(const char *args, size_t *length)
SoapySDRDevice_getDirectAccessBufferAddrs
SOAPY_SDR_API int SoapySDRDevice_getDirectAccessBufferAddrs(SoapySDRDevice *device, SoapySDRStream *stream, const size_t handle, void **buffs)
SoapySDRDevice_readSetting
SOAPY_SDR_API char * SoapySDRDevice_readSetting(const SoapySDRDevice *device, const char *key)
SoapySDRDevice_activateStream
SOAPY_SDR_API int SoapySDRDevice_activateStream(SoapySDRDevice *device, SoapySDRStream *stream, const int flags, const long long timeNs, const size_t numElems)
SoapySDRDevice_make_listStrArgs
SOAPY_SDR_API SoapySDRDevice ** SoapySDRDevice_make_listStrArgs(const char *const *argsList, const size_t length)
SoapySDRDevice_writeSetting
SOAPY_SDR_API int SoapySDRDevice_writeSetting(SoapySDRDevice *device, const char *key, const char *value)
SoapySDRDevice_readRegister
SOAPY_SDR_API unsigned SoapySDRDevice_readRegister(const SoapySDRDevice *device, const char *name, const unsigned addr)
SoapySDRDevice_getFullDuplex
SOAPY_SDR_API bool SoapySDRDevice_getFullDuplex(const SoapySDRDevice *device, const int direction, const size_t channel)
SoapySDRDevice_setMasterClockRate
SOAPY_SDR_API int SoapySDRDevice_setMasterClockRate(SoapySDRDevice *device, const double rate)
SoapySDRDevice_closeStream
SOAPY_SDR_API int SoapySDRDevice_closeStream(SoapySDRDevice *device, SoapySDRStream *stream)
SoapySDRDevice_readGPIODir
SOAPY_SDR_API unsigned SoapySDRDevice_readGPIODir(const SoapySDRDevice *device, const char *bank)
SoapySDRDevice_setReferenceClockRate
SOAPY_SDR_API int SoapySDRDevice_setReferenceClockRate(SoapySDRDevice *device, const double rate)
SoapySDRDevice_setGainElement
SOAPY_SDR_API int SoapySDRDevice_setGainElement(SoapySDRDevice *device, const int direction, const size_t channel, const char *name, const double value)
SoapySDRDevice_unmake_list
SOAPY_SDR_API int SoapySDRDevice_unmake_list(SoapySDRDevice **devices, const size_t length)
SoapySDRDevice_listSampleRates
SOAPY_SDR_API double * SoapySDRDevice_listSampleRates(const SoapySDRDevice *device, const int direction, const size_t channel, size_t *length)
SoapySDRDevice_setIQBalanceMode
SOAPY_SDR_API int SoapySDRDevice_setIQBalanceMode(SoapySDRDevice *device, const int direction, const size_t channel, const bool automatic)
SoapySDRDevice_listClockSources
SOAPY_SDR_API char ** SoapySDRDevice_listClockSources(const SoapySDRDevice *device, size_t *length)
SoapySDRDevice_getStreamMTU
SOAPY_SDR_API size_t SoapySDRDevice_getStreamMTU(const SoapySDRDevice *device, SoapySDRStream *stream)
Config.h
SoapySDRDevice_setTimeSource
SOAPY_SDR_API int SoapySDRDevice_setTimeSource(SoapySDRDevice *device, const char *source)
SoapySDRDevice_getFrequencyArgsInfo
SOAPY_SDR_API SoapySDRArgInfo * SoapySDRDevice_getFrequencyArgsInfo(const SoapySDRDevice *device, const int direction, const size_t channel, size_t *length)
SoapySDRDevice_readI2C
SOAPY_SDR_API char * SoapySDRDevice_readI2C(SoapySDRDevice *device, const int addr, size_t *numBytes)
SoapySDRDevice_getNativeDeviceHandle
SOAPY_SDR_API void * SoapySDRDevice_getNativeDeviceHandle(const SoapySDRDevice *device)
SoapySDRDevice_readChannelSensor
SOAPY_SDR_API char * SoapySDRDevice_readChannelSensor(const SoapySDRDevice *device, const int direction, const size_t channel, const char *key)
SoapySDRDevice_readStreamStatus
SOAPY_SDR_API int SoapySDRDevice_readStreamStatus(SoapySDRDevice *device, SoapySDRStream *stream, size_t *chanMask, int *flags, long long *timeNs, const long timeoutUs)
SoapySDRDevice_getFrequencyRange
SOAPY_SDR_API SoapySDRRange * SoapySDRDevice_getFrequencyRange(const SoapySDRDevice *device, const int direction, const size_t channel, size_t *length)
SoapySDRDevice_listGains
SOAPY_SDR_API char ** SoapySDRDevice_listGains(const SoapySDRDevice *device, const int direction, const size_t channel, size_t *length)
SoapySDRDevice_hasGainMode
SOAPY_SDR_API bool SoapySDRDevice_hasGainMode(const SoapySDRDevice *device, const int direction, const size_t channel)
SoapySDRArgInfo
Definition for argument info.
Definition: Types.h:63
SoapySDRDevice_readUART
SOAPY_SDR_API char * SoapySDRDevice_readUART(const SoapySDRDevice *device, const char *which, const long timeoutUs)
SoapySDRDevice_getDriverKey
SOAPY_SDR_API char * SoapySDRDevice_getDriverKey(const SoapySDRDevice *device)
SoapySDRDevice_setIQBalance
SOAPY_SDR_API int SoapySDRDevice_setIQBalance(SoapySDRDevice *device, const int direction, const size_t channel, const double balanceI, const double balanceQ)
SoapySDRDevice_getStreamArgsInfo
SOAPY_SDR_API SoapySDRArgInfo * SoapySDRDevice_getStreamArgsInfo(const SoapySDRDevice *device, const int direction, const size_t channel, size_t *length)
SoapySDRDevice_writeStream
SOAPY_SDR_API int SoapySDRDevice_writeStream(SoapySDRDevice *device, SoapySDRStream *stream, const void *const *buffs, const size_t numElems, int *flags, const long long timeNs, const long timeoutUs)
SoapySDRDevice_releaseWriteBuffer
SOAPY_SDR_API void SoapySDRDevice_releaseWriteBuffer(SoapySDRDevice *device, SoapySDRStream *stream, const size_t handle, const size_t numElems, int *flags, const long long timeNs)
SoapySDRDevice_writeRegister
SOAPY_SDR_API int SoapySDRDevice_writeRegister(SoapySDRDevice *device, const char *name, const unsigned addr, const unsigned value)
SoapySDRDevice_getChannelSettingInfo
SOAPY_SDR_API SoapySDRArgInfo * SoapySDRDevice_getChannelSettingInfo(const SoapySDRDevice *device, const int direction, const size_t channel, size_t *length)
SoapySDRDevice_writeI2C
SOAPY_SDR_API int SoapySDRDevice_writeI2C(SoapySDRDevice *device, const int addr, const char *data, const size_t numBytes)
SoapySDRDevice_writeRegisters
SOAPY_SDR_API int SoapySDRDevice_writeRegisters(SoapySDRDevice *device, const char *name, const unsigned addr, const unsigned *value, const size_t length)
SoapySDRDevice_listAntennas
SOAPY_SDR_API char ** SoapySDRDevice_listAntennas(const SoapySDRDevice *device, const int direction, const size_t channel, size_t *length)
SoapySDRDevice_setDCOffsetMode
SOAPY_SDR_API int SoapySDRDevice_setDCOffsetMode(SoapySDRDevice *device, const int direction, const size_t channel, const bool automatic)
SoapySDRDevice_getSettingInfo
SOAPY_SDR_API SoapySDRArgInfo * SoapySDRDevice_getSettingInfo(const SoapySDRDevice *device, size_t *length)
SoapySDRDevice_getFrequencyCorrection
SOAPY_SDR_API double SoapySDRDevice_getFrequencyCorrection(const SoapySDRDevice *device, const int direction, const size_t channel)
SoapySDRDevice_getSensorInfo
SOAPY_SDR_API SoapySDRArgInfo SoapySDRDevice_getSensorInfo(const SoapySDRDevice *device, const char *key)
SoapySDRDevice_getFrontendMapping
SOAPY_SDR_API char * SoapySDRDevice_getFrontendMapping(const SoapySDRDevice *device, const int direction)
SoapySDRDevice_writeGPIOMasked
SOAPY_SDR_API int SoapySDRDevice_writeGPIOMasked(SoapySDRDevice *device, const char *bank, const unsigned value, const unsigned mask)
SoapySDRDevice_setFrequency
SOAPY_SDR_API int SoapySDRDevice_setFrequency(SoapySDRDevice *device, const int direction, const size_t channel, const double frequency, const SoapySDRKwargs *args)
SoapySDRDevice_getGainElementRange
SOAPY_SDR_API SoapySDRRange SoapySDRDevice_getGainElementRange(const SoapySDRDevice *device, const int direction, const size_t channel, const char *name)
SoapySDRDevice_setBandwidth
SOAPY_SDR_API int SoapySDRDevice_setBandwidth(SoapySDRDevice *device, const int direction, const size_t channel, const double bw)
SoapySDRDevice_setDCOffset
SOAPY_SDR_API int SoapySDRDevice_setDCOffset(SoapySDRDevice *device, const int direction, const size_t channel, const double offsetI, const double offsetQ)
SoapySDRDevice_getChannelInfo
SOAPY_SDR_API SoapySDRKwargs SoapySDRDevice_getChannelInfo(const SoapySDRDevice *device, const int direction, const size_t channel)
SoapySDRDevice_getBandwidth
SOAPY_SDR_API double SoapySDRDevice_getBandwidth(const SoapySDRDevice *device, const int direction, const size_t channel)
SoapySDRDevice_unmake
SOAPY_SDR_API int SoapySDRDevice_unmake(SoapySDRDevice *device)
SoapySDRDevice_getSampleRate
SOAPY_SDR_API double SoapySDRDevice_getSampleRate(const SoapySDRDevice *device, const int direction, const size_t channel)
SoapySDRDevice_listFrequencies
SOAPY_SDR_API char ** SoapySDRDevice_listFrequencies(const SoapySDRDevice *device, const int direction, const size_t channel, size_t *length)
SoapySDRDevice_listGPIOBanks
SOAPY_SDR_API char ** SoapySDRDevice_listGPIOBanks(const SoapySDRDevice *device, size_t *length)
SoapySDRDevice_getIQBalance
SOAPY_SDR_API int SoapySDRDevice_getIQBalance(const SoapySDRDevice *device, const int direction, const size_t channel, double *balanceI, double *balanceQ)
SoapySDRDevice_getDCOffsetMode
SOAPY_SDR_API bool SoapySDRDevice_getDCOffsetMode(const SoapySDRDevice *device, const int direction, const size_t channel)
SoapySDRDevice_getChannelSensorInfo
SOAPY_SDR_API SoapySDRArgInfo SoapySDRDevice_getChannelSensorInfo(const SoapySDRDevice *device, const int direction, const size_t channel, const char *key)
SoapySDRDevice_getGain
SOAPY_SDR_API double SoapySDRDevice_getGain(const SoapySDRDevice *device, const int direction, const size_t channel)
SoapySDRDevice_getTimeSource
SOAPY_SDR_API char * SoapySDRDevice_getTimeSource(const SoapySDRDevice *device)