18 #define SP_API __declspec(dllexport)
25 typedef signed char int8_t;
26 typedef short int16_t;
28 typedef long long int64_t;
29 typedef unsigned char uint8_t;
30 typedef unsigned short uint16_t;
31 typedef unsigned int uint32_t;
32 typedef unsigned long long uint64_t;
37 #define SP_DEPRECATED(comment) __declspec(deprecated(comment))
40 #define SP_API __attribute__((visibility("default")))
43 #define SP_DEPRECATED(comment) __attribute__((deprecated))
45 #define SP_DEPRECATED(comment) comment
55#define SP_MAX_DEVICES (9)
58#define SP_MAX_REF_LEVEL (20.0)
60#define SP_AUTO_ATTEN (-1)
62#define SP_MAX_ATTEN (6)
65#define SP_MIN_FREQ (9.0e3)
67#define SP_MAX_FREQ (15.0e9)
69#define SP_MAX_RBW (10.0e6)
71#define SP_MIN_SWEEP_TIME (1.0e-6)
73#define SP_MAX_SWEEP_TIME (100.0)
76#define SP_REAL_TIME_MIN_SPAN (200.0e3)
78#define SP_REAL_TIME_MAX_SPAN (40.0e6)
80#define SP_REAL_TIME_MIN_RBW (2.0e3)
82#define SP_REAL_TIME_MAX_RBW (1.0e6)
85#define SP_MAX_IQ_DECIMATION (8192)
88#define SP_MAX_IQ_SWEEP_STEPS (1000)
91#define SP_MIN_FAN_SET_POINT (0.0)
93#define SP_MAX_FAN_SET_POINT (60.0)
100#define SP_MAX_SWEEP_QUEUE_SZ (16)
1276 double *actualStartFreq,
double *binSize,
int *sweepSize);
1305 double *binSize,
int *frameWidth,
int *frameHeight,
double *poi);
1396 float *sweepMax,
int *frameCount, int64_t *nsSinceEpoch);
1437SP_API
SpStatus spGetIQ(
int device,
void *iqBuf,
int iqBufSize,
double *triggers,
int triggerBufSize,
1438 int64_t *nsSinceEpoch,
SpBool purge,
int *sampleLoss,
int *samplesRemaining);
1564 double *latitude,
double *longitude,
double *altitude,
char *nmea,
int *nmeaLen);
SpTriggerEdge
Definition: sp_api.h:292
@ spTriggerEdgeFalling
Definition: sp_api.h:296
@ spTriggerEdgeRising
Definition: sp_api.h:294
SP_API SpStatus spWriteToGPS(int device, const uint8_t *mem, int len)
SpReference
Definition: sp_api.h:314
@ spReferenceUseExternal
Definition: sp_api.h:318
@ spReferenceUseInternal
Definition: sp_api.h:316
SP_API SpStatus spIQSweepListStartSweep(int device, int pos, void *dst, int64_t *timestamps)
SpStatus
Definition: sp_api.h:105
@ spInternalFlashErr
Definition: sp_api.h:107
@ spDeviceNotFoundErr
Definition: sp_api.h:156
@ spFramingErr
Definition: sp_api.h:139
@ spTempDrift
Definition: sp_api.h:168
@ spInternalFileIOErr
Definition: sp_api.h:109
@ spMaxDevicesConnectedErr
Definition: sp_api.h:118
@ spUncalData
Definition: sp_api.h:172
@ spADCOverflow
Definition: sp_api.h:170
@ spBootErr
Definition: sp_api.h:134
@ spNoError
Definition: sp_api.h:159
@ spGPSErr
Definition: sp_api.h:112
@ spConnectionLostErr
Definition: sp_api.h:145
@ spNullPtrErr
Definition: sp_api.h:149
@ spSettingClamped
Definition: sp_api.h:162
@ spInvalidDeviceErr
Definition: sp_api.h:147
@ spInvalidCalData
Definition: sp_api.h:181
@ spAllocationErr
Definition: sp_api.h:116
@ spSweepAlreadyActiveErr
Definition: sp_api.h:132
@ spCPULimited
Definition: sp_api.h:174
@ spInvalidConfigurationErr
Definition: sp_api.h:125
@ spInvalidParameterErr
Definition: sp_api.h:151
SP_API SpStatus spGetCalDate(int device, uint32_t *lastCalDate)
SP_API SpStatus spSetRealTimeCenterSpan(int device, double centerFreqHz, double spanHz)
SP_API SpStatus spSetRealTimeScale(int device, SpScale scale, double frameRef, double frameScale)
SP_API SpStatus spSetIQQueueSize(int device, int units)
SP_API SpStatus spSetIQSoftwareFilter(int device, SpBool enabled)
SP_API SpStatus spCloseDevice(int device)
SpDataType
Definition: sp_api.h:282
@ spDataType16sc
Definition: sp_api.h:286
@ spDataType32fc
Definition: sp_api.h:284
SpMode
Definition: sp_api.h:208
@ spModeRealTime
Definition: sp_api.h:214
@ spModeAudio
Definition: sp_api.h:220
@ spModeIdle
Definition: sp_api.h:210
@ spModeIQStreaming
Definition: sp_api.h:216
@ spModeIQSweepList
Definition: sp_api.h:218
@ spModeSweeping
Definition: sp_api.h:212
SP_API SpStatus spSetSweepWindow(int device, SpWindowType window)
SpPowerState
Definition: sp_api.h:198
@ spPowerStateStandby
Definition: sp_api.h:202
@ spPowerStateOn
Definition: sp_api.h:200
SP_API SpStatus spGetGPSInfo(int device, SpBool refresh, SpBool *updated, int64_t *secSinceEpoch, double *latitude, double *longitude, double *altitude, char *nmea, int *nmeaLen)
SP_API SpStatus spSetGPSTimebaseUpdate(int device, SpBool enabled)
SP_API SpStatus spWriteUARTDirect(int device, uint8_t data)
SP_API SpStatus spSetSweepScale(int device, SpScale scale)
SP_API SpStatus spSetIQSweepListSampleCount(int device, int step, uint32_t samples)
SpGPSPlatformModel
Definition: sp_api.h:364
@ SpGPSPlatformModelPedestrian
Definition: sp_api.h:380
@ SpGPSPlatformModelAutomotive
Definition: sp_api.h:385
@ SpGPSPlatformModelAtSea
Definition: sp_api.h:390
@ SpGPSPlatformModelAirborne_2g
Definition: sp_api.h:400
@ SpGPSPlatformModelStationary
Definition: sp_api.h:375
@ SpGPSPlatformModelAirborne_1g
Definition: sp_api.h:395
@ SpGPSPlatformModelPortable
Definition: sp_api.h:369
SP_API SpStatus spSetReference(int device, SpReference reference)
SP_API SpStatus spSetIQSampleRate(int device, int decimation)
SP_API SpStatus spIQSweepListFinishSweep(int device, int pos)
SP_API SpStatus spSetFanSetPoint(int device, float setPoint)
SP_API const char * spGetErrorString(SpStatus status)
SP_API SpStatus spGetIQ(int device, void *iqBuf, int iqBufSize, double *triggers, int triggerBufSize, int64_t *nsSinceEpoch, SpBool purge, int *sampleLoss, int *samplesRemaining)
SP_API SpStatus spSetIQExtTriggerEdge(int device, SpTriggerEdge edge)
SP_API SpStatus spGetReference(int device, SpReference *reference)
SP_API SpStatus spGetGPSState(int device, SpGPSState *GPSState)
SP_API SpStatus spSetIQTriggerSentinel(double sentinelValue)
SP_API SpStatus spSetAudioCenterFreq(int device, double centerFreqHz)
SpGPIOFunction
Definition: sp_api.h:324
@ SpGPIOFunctionUARTSweep
Definition: sp_api.h:340
@ SpGPIOFunctionLogicOutLow
Definition: sp_api.h:334
@ SpGPIOFunctionUARTDirect
Definition: sp_api.h:338
@ SpGPIOFunctionLogicOutHigh
Definition: sp_api.h:336
@ SpGPIOFunctionUARTDoppler
Definition: sp_api.h:342
@ SpGPIOFunctionTrigIn
Definition: sp_api.h:330
@ SpGPIOFunctionPPSOut
Definition: sp_api.h:332
SP_API SpStatus spAbort(int device)
SP_API SpStatus spOpenDevice(int *device)
SP_API SpStatus spSetAudioFilters(int device, double ifBandwidth, double audioLpf, double audioHpf)
SP_API SpStatus spSetRefLevel(int device, double refLevel)
SP_API SpStatus spSetSweepCenterSpan(int device, double centerFreqHz, double spanHz)
SP_API SpStatus spGetDeviceList(int *serials, int *deviceCount)
SP_API SpStatus spGetRealTimeParameters(int device, double *actualRBW, int *sweepSize, double *actualStartFreq, double *binSize, int *frameWidth, int *frameHeight, double *poi)
SP_API SpStatus spIQSweepListGetSweep(int device, void *dst, int64_t *timestamps)
SP_API SpStatus spGetFanSettings(int device, float *setPoint, float *voltage)
SP_API SpStatus spGetFirmwareVersion(int device, int *major, int *minor, int *revision)
SpWindowType
Definition: sp_api.h:262
@ spWindowBlackman
Definition: sp_api.h:268
@ spWindowRect
Definition: sp_api.h:274
@ spWindowHamming
Definition: sp_api.h:270
@ spWindowFlatTop
Definition: sp_api.h:264
@ spWindowNutall
Definition: sp_api.h:266
@ spWindowGaussian6dB
Definition: sp_api.h:272
SP_API SpStatus spGetGPSHoldoverInfo(int device, SpBool *usingGPSHoldover, uint32_t *lastHoldoverTime)
SP_API SpStatus spSetSweepDetector(int device, SpDetector detector, SpVideoUnits videoUnits)
SP_API SpStatus spSetIQDataType(int device, SpDataType dataType)
SP_API SpStatus spSetRealTimeRBW(int device, double rbw)
SP_API SpStatus spGetUARTBaudRate(int device, float *rate)
SpDetector
Definition: sp_api.h:226
@ spDetectorMinMax
Definition: sp_api.h:230
@ spDetectorAverage
Definition: sp_api.h:228
SpAudioType
Definition: sp_api.h:348
@ spAudioTypeFM
Definition: sp_api.h:352
@ spAudioTypeLSB
Definition: sp_api.h:356
@ spAudioTypeCW
Definition: sp_api.h:358
@ spAudioTypeUSB
Definition: sp_api.h:354
@ spAudioTypeAM
Definition: sp_api.h:350
SP_API SpStatus spGetIQCenterFreq(int device, double *centerFreqHz)
SP_API SpStatus spGetCurrentMode(int device, SpMode *mode)
SP_API SpStatus spOpenDeviceBySerial(int *device, int serialNumber)
SP_API SpStatus spSetIQSweepListSteps(int device, int steps)
SP_API SpStatus spSetIQSweepListRef(int device, int step, double level)
SP_API SpStatus spGetSweep(int device, float *sweepMin, float *sweepMax, int64_t *nsSinceEpoch)
SP_API const char * spGetAPIVersion()
SP_API SpStatus spSetAudioFMDeemphasis(int device, double deemphasis)
SP_API SpStatus spGetIQSweepListSteps(int device, int *steps)
SP_API SpStatus spGetIQParameters(int device, double *sampleRate, double *bandwidth)
SP_API SpStatus spSetSweepGPIOSwitchingDisabled(int device)
SP_API SpStatus spGetRefLevel(int device, double *refLevel)
SP_API SpStatus spSetUARTBaudRate(int device, float rate)
SP_API SpStatus spSetIQBandwidth(int device, double bandwidth)
SP_API SpStatus spSetAudioType(int device, SpAudioType audioType)
SP_API SpStatus spGetSerialNumber(int device, int *serialNumber)
SP_API SpStatus spSetIQSweepListAtten(int device, int step, int atten)
SP_API SpStatus spSetIQSweepListCorrected(int device, SpBool corrected)
SP_API SpStatus spConfigure(int device, SpMode mode)
SpScale
Definition: sp_api.h:236
@ spScaleFullScale
Definition: sp_api.h:242
@ spScaleLin
Definition: sp_api.h:240
@ spScaleLog
Definition: sp_api.h:238
SP_API SpStatus spSetPowerState(int device, SpPowerState powerState)
SpGPSState
Definition: sp_api.h:302
@ spGPSStateLocked
Definition: sp_api.h:306
@ spGPSStateDisciplined
Definition: sp_api.h:308
@ spGPSStateNotPresent
Definition: sp_api.h:304
SP_API SpStatus spSetIQCenterFreq(int device, double centerFreqHz)
SP_API SpStatus spGetAttenuator(int device, int *atten)
SP_API SpStatus spGetSweepParameters(int device, double *actualRBW, double *actualVBW, double *actualStartFreq, double *binSize, int *sweepSize)
SpVideoUnits
Definition: sp_api.h:248
@ spVideoPower
Definition: sp_api.h:254
@ spVideoLog
Definition: sp_api.h:250
@ spVideoSample
Definition: sp_api.h:256
@ spVideoVoltage
Definition: sp_api.h:252
SP_API SpStatus spSetRealTimeDetector(int device, SpDetector detector)
SP_API SpStatus spGetRealTimeFrame(int device, float *colorFrame, float *alphaFrame, float *sweepMin, float *sweepMax, int *frameCount, int64_t *nsSinceEpoch)
SP_API SpStatus spSetIQSweepListDataType(int device, SpDataType dataType)
SP_API SpStatus spSetSweepCoupling(int device, double rbw, double vbw, double sweepTime)
SP_API SpStatus spSetIQSweepListFreq(int device, int step, double freq)
SP_API SpStatus spSetSweepStartStop(int device, double startFreqHz, double stopFreqHz)
SP_API SpStatus spIQSweepListGetCorrections(int device, float *corrections)
SP_API SpStatus spGetPowerState(int device, SpPowerState *powerState)
SpBool
Definition: sp_api.h:188
@ spTrue
Definition: sp_api.h:192
@ spFalse
Definition: sp_api.h:190
SP_API SpStatus spSetAttenuator(int device, int atten)
SP_API SpStatus spGetDeviceDiagnostics(int device, float *voltage, float *current, float *temperature)
SP_API SpStatus spGetAudio(int device, float *audio)
SP_API SpStatus spGetGPSTimebaseUpdate(int device, SpBool *enabled)
SP_API SpStatus spSetRealTimeWindow(int device, SpWindowType window)
SP_API SpStatus spSetSweepGPIOSwitching(int device, double *freqs, uint8_t *data, int count)
SP_API SpStatus spSetGPSPlatformModel(int device, SpGPSPlatformModel platformModel)
SP_API SpStatus spGetGPIOPort(int device, SpGPIOFunction *func)
SP_API SpStatus spPresetDevice(int device)
SP_API SpStatus spSetGPIOPort(int device, SpGPIOFunction func)
SP_API SpStatus spGetIQCorrection(int device, float *scale)