📄 iqview.h
字号:
/*===========================================================================
Module:
IQView.h
Description:
This header file defines the types and definitions used to interface to
the IQView tester.
===========================================================================*/
#ifndef IQVIEW_H
#define IQVIEW_H
#include "IQView_defines.h"
#ifdef IQV_DLL_EXPORTS
#define IQV_DLL_API extern __declspec(dllexport)
#else
#ifdef IQV_C
// Set this compile switch (IQV_C) if running C (using plain export names).
#define IQV_DLL_API extern
#else
// Do not set this compile switch if running C++ (using decorated export
// names).
#define IQV_DLL_API extern "C" __declspec(dllimport)
#endif
#endif
/*===========================================================================
Definitions
===========================================================================*/
#define IQV_BOOL8 bool
#define IQV_CHAR8 char
#define IQV_UCHAR8 unsigned char
#define IQV_INT32 int
#define IQV_UINT32 unsigned int
#define IQV_FLOAT32 float
#define IQV_DOUBLE64 double
/* Length of the IP address. */
#define IQV_IP_ADDR_LEN 15
/* General text buffer length. */
#define IQV_TXT_LEN 80
/* Maximum number of samples in channel data buffer. */
#define IQV_CH_DATA_LEN (1<<20)
/* Defines the number of real and imag elements returned in the eye vector */
#define IQV_N_EYE_ELEMENTS 3306
/*===========================================================================
Enumerations
===========================================================================*/
/* Enumeration for PASS/FAIL values. */
enum IQV_PF_ENUM
{
IQV_PF_FAIL, /* Measurement failed. */
IQV_PF_PASS, /* Measurement passed. */
IQV_PF_UNDEFINED /* Pass/fail status is undefined. */
};
/* Enumeration for ADC input switch setting. */
enum IQV_INPUT_ADC_ENUM
{
IQV_INPUT_ADC_RF, /* Data captured from RF. */
IQV_INPUT_ADC_BB, /* Data captured from base band. */
IQV_INPUT_ADC_UNDEFINED /* Undefined default value. */
};
/* Enumeration for modulation switch setting. */
enum IQV_INPUT_MOD_ENUM
{
IQV_INPUT_MOD_DIGITAL, /* RF TX modulation from
internal DAC. */
IQV_INPUT_MOD_ANALOG, /* RF TX modulation from
external analog input. */
IQV_INPUT_MOD_DAC_RF /* RF TX modulation on RF. */
= IQV_INPUT_MOD_DIGITAL,
IQV_INPUT_MOD_DAC_BB /* RF TX modulation on BB. */
= IQV_INPUT_MOD_ANALOG,
IQV_INPUT_MOD_UNDEFINED /* Undefined default value. */
};
/* Enumeration for data capture handling. */
enum IQV_DC_ENUM
{
IQV_DC_ARM_NEW, /* Arm the IQview tester for new data
capture. */
IQV_DC_ARM_RESERVED, /* Reserved mode. */
IQV_DC_UNDEFINED /* Undefined default value. */
};
/* Enumeration for continuous data capture handling. */
enum IQV_DC_CONT_ENUM
{
IQV_DC_CONT_OFF, /* Use when clear the continuous mode. */
IQV_DC_CONT_ON, /* Use when running in continuous mode. */
IQV_DC_CONT_UNDEFINED /* Undefined default value. */
};
/* Enumeration for signal modulation source. */
enum IQV_SOURCE_ENUM
{
IQV_SOURCE_WAVE, /* Internal modulation from
wave. */
IQV_SOURCE_SIGNAL_GENERATOR, /* Internal modulation from
signal generator. */
IQV_SOURCE_UNDEFINED /* Undefined default modulation
source. */
};
/* Enumeration for trigger selection - 802.11 a/b/g setting. */
enum IQV_TRIG_TYPE_ENUM
{
IQV_TRIG_TYPE_FREE_RUN, /* Free running ADC sampling. */
IQV_TRIG_TYPE_EXT, /* ADC External Trigger selected. */
IQV_TRIG_TYPE_IF, /* ADC IF Trigger selected
- trigger calibration will be
performed. */
IQV_TRIG_TYPE_IF_NO_CAL, /* ADC IF Trigger selected
- trigger calibration will not
be performed. */
IQV_TRIG_TYPE_IF2, /* New (potentially faster) ADC IF Trigger
selected - trigger calibration will be
performed. */
IQV_TRIG_TYPE_IF2_NO_CAL /* New (potentially faster) ADC IF Trigger selected
- trigger calibration will not
be performed. */
};
/* Enumeration for phase correction mode - 802.11 a/g setting. */
enum IQV_PH_CORR_ENUM
{
IQV_PH_CORR_OFF = 1, /* Phase correction off. */
IQV_PH_CORR_SYM_BY_SYM = 2, /* Symbol-by-symbol correction. */
IQV_PH_CORR_MOVING_AVG = 3 /* Moving avg. correction
- 10 symbols
- Default value. */
};
/* Enumeration for channel estimate - 802.11 a/g setting. */
enum IQV_CH_EST_ENUM
{
IQV_CH_EST_RAW = 1, /* Raw Channel Estimate
- long train. */
IQV_CH_EST_RAW_LONG = IQV_CH_EST_RAW, /* Same as IQV_CH_EST_RAW. */
IQV_CH_EST_2ND_ORDER = 2, /* 2nd Order Polyfit. */
IQV_CH_EST_RAW_FULL = 3 /* Raw Channel Estimate
- full packet
- Default value. */
};
/* Enumeration for Symbol Timing Correction - 802.11 a/g setting. */
enum IQV_SYM_TIM_ENUM
{
IQV_SYM_TIM_OFF = 1, /* Symbol Timing Correction Off. */
IQV_SYM_TIM_ON = 2 /* Symbol Timing Correction On
- Default value. */
};
/* Enumeration for Frequency Sync. Mode - 802.11 a/g setting. */
enum IQV_FREQ_SYNC_ENUM
{
IQV_FREQ_SYNC_SHORT_TRAIN = 1, /* Short Training Symbol. */
IQV_FREQ_SYNC_LONG_TRAIN = 2, /* Long Training Symbol
- Default value. */
IQV_FREQ_SYNC_FULL_PACKET = 3 /* Full Data Packet. */
};
/* Enumeration for Amplitude Tracking - 802.11 a/g setting. */
enum IQV_AMPL_TRACK_ENUM
{
IQV_AMPL_TRACK_OFF = 1, /* Amplitude tracking off. */
IQV_AMPL_TRACK_ON = 2 /* Amplitude tracking on
- Default value. */
};
/* Enumeration for Number of equalizer taps - 802.11 b setting. */
enum IQV_EQ_ENUM
{
IQV_EQ_OFF = 1, /* Equalizer Off. */
IQV_EQ_5_TAPS = 5, /* 5 taps equalizer
- Default value. */
IQV_EQ_7_TAPS = 7, /* 7 taps equalizer. */
IQV_EQ_9_TAPS = 9 /* 9 taps equalizer. */
};
/* Enumeration for DC removal - 802.11 b setting. */
enum IQV_DC_REMOVAL_ENUM
{
IQV_DC_REMOVAL_OFF = 0, /* DC removal Off
- Default value. */
IQV_DC_REMOVAL_ON = 1 /* DC removal On. */
};
/* Enumeration for 802.11 b method - 802.11 b setting. */
enum IQV_11B_METHOD_ENUM
{
IQV_11B_STANDARD_TX_ACC = 1, /* Use 11b standard TX accuracy
- Default value. */
IQV_11B_RMS_ERROR_VECTOR = 2 /* Use 11b RMS error vector. */
};
/* Enumeration for enabling and disabling the RF. */
enum IQV_RF_ENABLE_ENUM
{
IQV_RF_DISABLED, /* RF has been disabled. */
IQV_RF_ENABLED /* RF has been enabled. */
};
/* Enumeration for RF N-connector port selection. */
enum IQV_PORT_ENUM
{
IQV_PORT_OFF = 1, /* Port has been disabled. */
IQV_PORT_LEFT = 2, /* RF uses left port. */
IQV_PORT_RIGHT = 3 /* RF uses right port. */
};
/* Enumeration for enabling and disabling swapping of I and Q signals. */
enum IQV_IQ_SWAP_ENUM
{
IQV_IQ_SWAP_DISABLED, /* IQ swap has been disabled. */
IQV_IQ_SWAP_ENABLED /* IQ swap has been enabled. */
};
/* Enumeration for structure IQV_MISC_TYPE. */
enum IQV_MISC_ENUM
{
IQV_MISC_INT, /* Integer parameter. */
IQV_MISC_REAL, /* Real parameter. */
IQV_MISC_COMPLEX, /* Complex parameter. */
IQV_MISC_TXT, /* Text String parameter. */
IQV_MISC_COMPLEX_ARRAY, /* Real/Complex Array parameter. */
IQV_MISC_UNUSED /* Unused value. */
};
/* Enumeration for setting VSA Type */
enum IQV_VSA_TYPE_ENUM
{
IQV_VSA_TYPE_0, /* VSA Type 0 - default */
IQV_VSA_TYPE_1, /* VSA Type 1 - recommended */
}; // See API documentation "Setting the VSA Type"
/* Enumeration for Token Handling */
enum IQV_TOKEN_ENUM
{
IQV_TOKEN_NO_1,
IQV_TOKEN_NO_2,
IQV_TOKEN_CNT
};
/* Enumeration for Video AV Method, input to IQV_GROUP_FFT */
enum IQV_VIDEO_AV_METHOD_ENUM
{
IQV_AV_PEAK_HOLD,
IQV_AV_MEAN
};
/* Enumeration for Window Type, input to IQV_GROUP_FFT */
enum IQV_WINDOW_TYPE_ENUM
{
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -