17 #define PCR_API __declspec(dllexport)
24 typedef signed char int8_t;
25 typedef short int16_t;
27 typedef long long int64_t;
28 typedef unsigned char uint8_t;
29 typedef unsigned short uint16_t;
30 typedef unsigned int uint32_t;
31 typedef unsigned long long uint64_t;
36 #define PCR_DEPRECATED(comment) __declspec(deprecated(comment))
39 #define PCR_API __attribute__((visibility("default")))
42 #define PCR_DEPRECATED(comment) __attribute__((deprecated))
44 #define PCR_DEPRECATED(comment) comment
49#define PCR_MAX_DEVICES (4)
52#define PCR_DEFAULT_HOST_ADDR ("192.168.2.2")
54#define PCR_DEFAULT_DEVICE_ADDR ("192.168.2.10")
56#define PCR_DEFAULT_PORT (51665)
58#define PCR_DEFAULT_STREAM_PORT (4991)
61#define PCR_SWEEP_CHANNEL_DISABLED (-1)
64#define PCR_AUTO_ATTEN (-1)
66#define PCR_MAX_ATTEN (6)
69#define PCR_MIN_FREQ (100.0e3)
71#define PCR_MAX_FREQ (20.0e9)
73#define PCR_SWEEP_MIN_SPAN (100.0)
75#define PCR_SWEEP_MIN_RBW (100.0)
77#define PCR_SWEEP_MAX_RBW (10.0e6)
79#define PCR_MIN_SWEEP_TIME (1.0e-6)
81#define PCR_MAX_SWEEP_TIME (1.0)
84#define PCR_MIN_REF_LVL (-130.0)
86#define PCR_MAX_REF_LVL (20.0)
89#define PCR_STREAM_SR (50.0e6)
91#define PCR_STREAM_MIN_DECIMATION (1)
93#define PCR_STREAM_MAX_DECIMATION (256)
95#define PCR_STREAM_MIN_BW (20.0e3)
97#define PCR_STREAM_MAX_BW (40.0e6)
100#define PCR_MIN_CNTX_INTERVAL (3)
102#define PCR_MAX_CNTX_INTERVAL (4095)
105#define PCR_VSG_MIN_LEVEL (-80.0)
107#define PCR_VSG_MAX_LEVEL (10.0)
109#define PCR_VSG_MAX_BUF_LEN (4096)
112#define PCR_MIN_FAN_SETPOINT (5.0)
114#define PCR_MAX_FAN_SETPOINT (60.0)
117#define PCR_MIN_CHANNEL_DELAY (-25.0e-9)
119#define PCR_MAX_CHANNEL_DELAY (25.0e-9)
239 PCRStreamModeLocal = 0,
378 const char *hostAddr,
379 const char *deviceAddr,
405 const char *hostAddr,
406 const char *deviceAddr,
613 double *latitude,
double *longitude,
double *altitude);
1032 const char *dstAddr,
1034 uint64_t dstMACAddr);
1347 int64_t *nsSinceEpoch,
1350 int *samplesRemaining,
1352 int triggerBufSize);
1378 double *actualStartFreq,
PCR_API PCRStatus pcrSetStreamFullScale(int handle, PCRBool fullScale)
PCR_API PCRStatus pcrGetGPSInfo(int handle, PCRBool refresh, PCRBool *updated, int64_t *secSinceEpoch, double *latitude, double *longitude, double *altitude)
PCR_API PCRStatus pcrSetSweepWindow(int handle, PCRSweepWindow window)
PCR_API PCRStatus pcrGetFanSetPoint(int handle, float *setPoint)
PCR_API PCRStatus pcrSetStreamVrtCntxInterval(int handle, PCRBool enabled, int interval)
PCR_API PCRStatus pcrSetStreamAtten(int handle, int atten)
PCR_API PCRStatus pcrGetChannelPhaseOffset(int handle, int channel, double *phaseOffset)
PCR_API PCRStatus pcrSetVSGLevel(int handle, double level)
PCR_API PCRStatus pcrSetChannelFreq(int handle, int channel, double freqHz)
PCR_API PCRStatus pcrGetGPSState(int handle, PCRGPSState *state)
pcrGetGPSState Determine the GPS lock state of the PCR4200.
PCR_API PCRStatus pcrGetFanEnabled(int handle, PCRBool *enabled)
PCR_API PCRStatus pcrSetStreamVrtAddr(int handle, int channel, const char *dstAddr, uint16_t dstPort, uint64_t dstMACAddr)
PCR_API PCRStatus pcrNetworkConfigCloseDevice(int handle)
PCR_API PCRStatus pcrSetSweepAtten(int handle, int atten)
PCRTriggerEdge
Definition: pcr_api.h:228
@ PCRTriggerEdgeFalling
Definition: pcr_api.h:232
@ PCRTriggerEdgeRising
Definition: pcr_api.h:230
PCR_API PCRStatus pcrGetChannelCount(int handle, int *channelCount)
PCR_API PCRStatus pcrSetSweepRefLevel(int handle, double refLevel)
PCR_API PCRStatus pcrSetStreamLocalAddr(int handle, int deviceIndex, uint16_t port)
PCR_API PCRStatus pcrSetStreamVrtChannelID(int handle, int channel, int streamID)
PCR_API PCRStatus pcrSetGPSTimebaseUpdate(int handle, PCRBool enabled)
PCR_API PCRStatus pcrGetChannelFreq(int handle, int channel, double *freqHz)
PCR_API PCRStatus pcrSetStreamBandwidth(int handle, double bandwidth)
PCR_API const char * pcrGetErrorString(PCRStatus status)
PCRBool
Definition: pcr_api.h:124
@ PCRBoolFalse
Definition: pcr_api.h:126
@ PCRBoolTrue
Definition: pcr_api.h:128
PCR_API PCRStatus pcrNetworkConfigSetIP(int handle, const char *addr, PCRBool nonVolatile)
PCR_API PCRStatus pcrSetStreamDataType(int handle, PCRDataType dataType)
PCR_API PCRStatus pcrGetFullDeviceDiagnostics(int handle, PCRDeviceDiagnostics *diagnostics)
PCR_API PCRStatus pcrSetVSGEnabled(int handle, PCRBool enabled)
PCR_API PCRStatus pcrSetStreamRefLevel(int handle, double refLevel)
PCR_API PCRStatus pcrSetSweepCoupling(int handle, double rbw, double vbw, double sweepTime)
PCR_API PCRStatus pcrSetFanEnabled(int handle, PCRBool enabled)
PCRDataType
Definition: pcr_api.h:134
@ PCRDataType32fc
Definition: pcr_api.h:138
@ PCRDataType16sc
Definition: pcr_api.h:136
PCR_API PCRStatus pcrSetFanSetPoint(int handle, float setPoint)
PCR_API PCRStatus pcrSweepGetParameters(int handle, double *actualRBW, double *actualVBW, double *actualStartFreq, double *binSize, int *sweepSize)
PCR_API PCRStatus pcrSweepFinish(int handle, float *sweep)
PCRSweepVideoUnits
Definition: pcr_api.h:190
@ PCRSweepVideoUnitsVoltage
Definition: pcr_api.h:194
@ PCRSweepVideoUnitsPower
Definition: pcr_api.h:196
@ PCRSweepVideoUnitsLog
Definition: pcr_api.h:192
@ PCRSweepVideoUnitsSample
Definition: pcr_api.h:198
PCR_API PCRStatus pcrGetChannelDelay(int handle, int channel, double *delay)
PCR_API PCRStatus pcrStreamRecv(int handle, void **buffers, int samples, int64_t *nsSinceEpoch, PCRBool purge, int *sampleLoss, int *samplesRemaining, double *triggers, int triggerBufSize)
PCR_API PCRStatus pcrGetGPSHoldoverInfo(int handle, PCRBool *usingGPSHoldover, uint64_t *lastHoldoverTime)
PCR_API PCRStatus pcrGetReference(int handle, PCRReference *reference)
PCR_API PCRStatus pcrGetSweep(int handle, float *sweep)
PCR_API PCRStatus pcrNetworkConfigSetPort(int handle, int port, PCRBool nonVolatile)
PCR_API const char * pcrGetAPIVersion()
PCR_API PCRStatus pcrGetFirmwareVersion(int handle, int *major, int *minor, int *revision)
PCR_API PCRStatus pcrSetReference(int handle, PCRReference reference)
PCR_API PCRStatus pcrSetStreamMode(int handle, PCRStreamMode mode)
PCR_API PCRStatus pcrSetStreamSampleRate(int handle, int decimation)
PCR_API PCRStatus pcrAbort(int handle)
PCR_API PCRStatus pcrGetDeviceDiagnostics(int handle, float *voltage, float *current, float *temperature)
PCREndianness
Definition: pcr_api.h:168
@ PCREndiannessLittle
Definition: pcr_api.h:172
@ PCREndiannessBig
Definition: pcr_api.h:170
PCR_API PCRStatus pcrStreamCorrection(int handle, int channel, float *correction)
PCR_API PCRStatus pcrSetStreamTriggerEdge(int handle, PCRTriggerEdge edge)
PCR_API PCRStatus pcrSetSweepDetector(int handle, PCRSweepDetector detector, PCRSweepVideoUnits videoUnits)
PCRStatus
Definition: pcr_api.h:246
@ PCRStatusDeviceConnectionLostErr
Definition: pcr_api.h:290
@ PCRStatusInvalidConfigurationErr
Definition: pcr_api.h:277
@ PCRStatusTempDriftWarning
Definition: pcr_api.h:308
@ PCRStatusMemoryErr
Definition: pcr_api.h:279
@ PCRStatusBufferOverflow
Definition: pcr_api.h:313
@ PCRStatusADCErr
Definition: pcr_api.h:259
@ PCRStatusSyncErr
Definition: pcr_api.h:267
@ PCRStatusIOErr
Definition: pcr_api.h:269
@ PCRStatusSweepActiveErr
Definition: pcr_api.h:254
@ PCRStatusUncalData
Definition: pcr_api.h:302
@ PCRStatusInvalidDeviceErr
Definition: pcr_api.h:286
@ PCRStatusPairedErr
Definition: pcr_api.h:261
@ PCRStatusMaxDevicesConnectedErr
Definition: pcr_api.h:284
@ PCRStatusSettingClamped
Definition: pcr_api.h:298
@ PCRStatusInvalidParameterErr
Definition: pcr_api.h:271
@ PCRStatusDeviceNotFoundErr
Definition: pcr_api.h:292
@ PCRStatusNoError
Definition: pcr_api.h:295
@ PCRStatusSweepNotActiveErr
Definition: pcr_api.h:250
@ PCRStatusNullPtrErr
Definition: pcr_api.h:288
@ PCRStatusInvalidCalData
Definition: pcr_api.h:317
@ PCRStatusADCOverflow
Definition: pcr_api.h:300
PCRSweepDetector
Definition: pcr_api.h:178
@ PCRSweepDetectorMax
Definition: pcr_api.h:184
@ PCRSweepDetectorMin
Definition: pcr_api.h:182
@ PCRSweepDetectorAvg
Definition: pcr_api.h:180
PCR_API PCRStatus pcrSweepStart(int handle)
PCRSweepScale
Definition: pcr_api.h:204
@ PCRSweepScaleLin
Definition: pcr_api.h:208
@ PCRSweepScaleFullScale
Definition: pcr_api.h:210
@ PCRSweepScaleLog
Definition: pcr_api.h:206
PCRSweepWindow
Definition: pcr_api.h:216
@ PCRSweepWindowGaussian6dB
Definition: pcr_api.h:222
@ PCRSweepWindowNutall
Definition: pcr_api.h:220
@ PCRSweepWindowFlattop
Definition: pcr_api.h:218
PCR_API PCRStatus pcrNetworkConfigGetPort(int handle, int *port)
PCR_API PCRStatus pcrSetSweepScale(int handle, PCRSweepScale scale)
PCR_API PCRStatus pcrGetSerialNumber(int handle, int *serialNumber)
PCR_API PCRStatus pcrSetChannelPhaseOffset(int handle, int channel, double phaseOffset)
PCR_API PCRStatus pcrGetGPSTimebaseUpdate(int handle, PCRBool *enabled)
PCR_API PCRStatus pcrGetChannelConfig(int handle, int *enabled, int *sweepChannel)
PCR_API PCRStatus pcrNetworkConfigOpenDevice(int *handle, int serialNumber)
PCR_API PCRStatus pcrNetworkConfigGetMAC(int handle, char *mac)
PCR_API PCRStatus pcrGetChannelShared(int handle, int channel, PCRBool *useSharedLO)
PCR_API PCRStatus pcrSetChannelShared(int handle, int channel, PCRBool useSharedLO)
PCR_API PCRStatus pcrSetSweepStartStop(int handle, double startHz, double stopHz)
PCR_API PCRStatus pcrCloseDevice(int handle)
PCRGPSState
Definition: pcr_api.h:154
@ PCRGPSStateNotPresent
Definition: pcr_api.h:156
@ PCRGPSStateLocked
Definition: pcr_api.h:158
@ PCRGPSStateDisciplined
Definition: pcr_api.h:162
PCR_API PCRStatus pcrPairDevice(int handle, const char *hostAddr, const char *deviceAddr, uint16_t port)
PCR_API PCRStatus pcrNetworkConfigGetDeviceList(int *serials, int *deviceCount)
PCR_API PCRStatus pcrConnectDevice(int *handle, const char *hostAddr, const char *deviceAddr, uint16_t port)
PCR_API PCRStatus pcrSetChannelConfig(int handle, const int *enabled, int sweepChannel)
PCR_API PCRStatus pcrGetSharedFreq(int handle, double *freqHz)
PCR_API PCRStatus pcrGetCalDate(int handle, uint32_t *lastCalDate)
PCR_API PCRStatus pcrStreamParameters(int handle, int *channelCount, double *sampleRate, double *bandwidth)
PCR_API PCRStatus pcrSetStreamVrtEndianness(int handle, PCREndianness endianness)
PCRReference
Definition: pcr_api.h:144
@ PCRReferenceExternal
Definition: pcr_api.h:148
@ PCRReferenceInternal
Definition: pcr_api.h:146
PCR_API PCRStatus pcrSetLowPowerState(int handle)
PCR_API PCRStatus pcrWriteMessageToGPS(int handle, uint32_t key, uint64_t value, int valueSizeBytes)
PCR_API PCRStatus pcrInitiate(int handle)
PCR_API PCRStatus pcrNetworkConfigGetIP(int handle, char *addr)
PCRStreamMode
Definition: pcr_api.h:238
PCR_API PCRStatus pcrSetVSGPattern(int handle, void *iq, int len, PCRDataType dataType)
PCR_API PCRStatus pcrSetSweepCenterSpan(int handle, double centerHz, double spanHz)
PCR_API PCRStatus pcrSetChannelDelay(int handle, int channel, double delay)
PCR_API PCRStatus pcrSetSharedFreq(int handle, double freqHz)
Definition: pcr_api.h:322
float sfpTxPower
Definition: pcr_api.h:342
float sfpRxPower
Definition: pcr_api.h:344
float tempRFBoard1
Definition: pcr_api.h:336
float voltage
Definition: pcr_api.h:324
float currentInput
Definition: pcr_api.h:326
float tempMB
Definition: pcr_api.h:334
float sfpTemp
Definition: pcr_api.h:340
float tempFPGA
Definition: pcr_api.h:332
float currentOCXO
Definition: pcr_api.h:328
float current58
Definition: pcr_api.h:330
float tempRFBoard2
Definition: pcr_api.h:338