⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 agn4010wsoapi.h

📁 MTK 手机软件开发 META 源代码,开发环境: C++ Builder
💻 H
📖 第 1 页 / 共 2 页
字号:
//#include "stdafx.h"
#if defined(__cplusplus)
	#include <comdef.h>
#else
	#define true	TRUE
	#define false	FALSE
#endif

enum enumWindowType
{
    enumWindowType_Uniform = 0,
    enumWindowType_Hanning = 1,
    enumWindowType_Gaussian = 2,
    enumWindowType_FlatTop = 3,
};

enum enumModulationFormat
{
    enumModulationFormat_BPSK = 0,			// 6 Mbps, 9 Mbps
    enumModulationFormat_QPSK = 1,			// 12 Mbps, 18 Mbps
    enumModulationFormat_QAM16 = 2,			// 24 Mbps, 36 Mbps
    enumModulationFormat_QAM64 = 3,			// 48 Mbps, 54 Mbps
    enumModulationFormat_PSK8 = 4,
    enumModulationFormat_Barker1 = 5,
    enumModulationFormat_Barker2 = 6,
    enumModulationFormat_CCK5_5 = 7,
    enumModulationFormat_CCK11 = 8,
    enumModulationFormat_PBCC5_5 = 9,
    enumModulationFormat_PBCC11 = 10,
    enumModulationFormat_PBCC22 = 11,
    enumModulationFormat_PBCC33 = 12,
    enumModulationFormat_Unknown = 99
};

enum enumTriggerStyle
{
    enumTriggerStyle_FreeRun  = 1,
    enumTriggerStyle_MagLevel = 2,
    enumTriggerStyle_External = 3,
};

enum enumGatedSpectrum_SpectrumWidth
{
    enumGatedSpectrum_SpectrumWidthEnum_Width_22MHz = 1,
    enumGatedSpectrum_SpectrumWidthEnum_Width_44MHz = 2,
    enumGatedSpectrum_SpectrumWidthEnum_Width_66MHz = 3
};

enum enumGatedSpectrum_AveragingStyle
{
    enumGatedSpectrum_AveragingStyleEnum_RMS = 1,
    enumGatedSpectrum_AveragingStyleEnum_RMSExponential = 2,
    enumGatedSpectrum_AveragingStyleEnum_Time = 3,
    enumGatedSpectrum_AveragingStyleEnum_TimeExponential = 4,
    enumGatedSpectrum_AveragingStyleEnum_PeakHold = 5,
	#if defined(__IP_3_9__) || defined(__IP_4_4__)
		enumGatedSpectrum_AveragingStyleEnum_MinPeakHold = 6
	#endif
};

enum enumARBDownload_FileTypeOption
{
    enumARBDownload_FileTypeOption_SegmentFile = 1,
    enumARBDownload_FileTypeOption_SequenceFile = 2,
    enumARBDownload_FileTypeOption_CheckExisting = 0x80,
};

enum enumCalc_ValueOption
{
    enumCalc_ValueOption_Percent2dB = 1,
    enumCalc_ValueOption_dB2Percent,
};

enum enumAutoRangeExOption
{
    enumAutoRangeExOption_None = 0,
    enumAutoRangeExOption_WaitUntilComplete = 0x1,
    enumAutoRangeExOption_SetPropertyAfterComplete = 0x2,
};

#if defined(__cplusplus)
extern "C" {
#endif

__declspec(dllexport) long _stdcall AgN4010_TurnSelfRangeOn(
	#if defined(__cplusplus)
		double ddExpectPower_dBm,BOOL boolOn = true);
	#else
		double ddExpectPower_dBm,BOOL boolOn);
	#endif
//	Return:
//		>= 0, SUCCESS
//		< 0, ERROR
__declspec(dllexport) double _stdcall AgN4010_GetSelfRangeValue(const char *lpszPropertyName);
//	Return:
//		= 999, PROPERTY NOT EXISTS
//		others, SUCCESS
//
//	Supported Property Name:
//
//		ExpectPower
//		TriggerLevel_mV_11a
//		TriggerLevel_mV_11b
//		EVM_PowerRange_dBm_11a
//
__declspec(dllexport) long _stdcall AgN4010_InitViSession(const char *lpszAgN4010Address);
//	Return:
//		> 0, SUCCESS
//		= 0, NULL VI SESSION
//		< 0, ERROR
__declspec(dllexport) long _stdcall AgN4010_CloseViSession();
//	Return:
//		>= 0, SUCCESS
//		< 0, ERROR
__declspec(dllexport) long _stdcall AgN4010_Init(
		const char *lpszAgN4010Address,
	#if defined(__cplusplus)
		BOOL boolDeleteARBSequenceFiles = false,
		BOOL boolUseInternalLicense = true,
		BOOL boolVsaVisible = false,
		BOOL boolWtaVisible = false);
	#else
		BOOL boolDeleteARBSequenceFiles,
		BOOL boolUseInternalLicense,
		BOOL boolVsaVisible,
		BOOL boolWtaVisible);
	#endif
//	Return:
//		>= 0, SUCCESS
//		< 0, ERROR
//__declspec(dllexport) long _stdcall AgN4010_Get_Obj89607(_variant_t Obj89607);
//	Return:
//		>= 0, SUCCESS
//		< 0, ERROR
//__declspec(dllexport) long _stdcall AgN4010_Get_Obj89601(_variant_t Obj89601);
//	Return:
//		>= 0, SUCCESS
//		< 0, ERROR
__declspec(dllexport) long _stdcall AgN4010_Preset();
//	Return:
//		>= 0, SUCCESS
//		< 0, ERROR
__declspec(dllexport) long _stdcall AgN4010_SelfTest();
//	Return:
//		>= 0, SUCCESS
//		< 0, ERROR
__declspec(dllexport) long _stdcall AgN4010_Close();
//	Return:
//		>= 0, SUCCESS
//		< 0, ERROR
__declspec(dllexport) long _stdcall AgN4010_SerialNumber(char *lpszSerialNumber);
//	Return:
//		>= 0, SUCCESS
//		< 0, ERROR
__declspec(dllexport) long _stdcall AgN4010_DigitalAnalyzer_Setup_11ag(
		double	ddCenterFrequency_MHz,
		long	nMirrorFrequency_false,
		long	nFramesUsed,
		long	nMaxSymbolsUsed,
		double	ddPowerRange_dBm,
		enum enumTriggerStyle nTriggerStyle,
		double	ddTriggerDelay_s,
		double	ddTriggerLevel_mV);
//	Return:
//		>= 0, SUCCESS
//		< 0, ERROR
__declspec(dllexport) long _stdcall AgN4010_DigitalAnalyzer_Setup_11b(
		double	ddCenterFrequency_MHz,
		long	nMirrorFrequency_false,
		long	nPacketUsed,
		double	ddMaxPacketLength_s,
		double	ddPowerRange_dBm,
		enum enumTriggerStyle nTriggerStyle,
		double	ddTriggerDelay_s,
		double	ddTriggerLevel_mV);
//	Return:
//		>= 0, SUCCESS
//		< 0, ERROR
__declspec(dllexport) long _stdcall AgN4010_RFAnalyzer_Setup(
		double	ddCenterFrequency_MHz,
		enum enumTriggerStyle nTriggerStyle,
		double	ddTriggerDelay_s,
		double	ddTriggerLevel_mV,
		double	ddTriggerHoldOff_s);
//	Return:
//		>= 0, SUCCESS
//		< 0, ERROR
__declspec(dllexport) long _stdcall AgN4010_SetProperty(const char *lpszPropertyName,double Value);
//	Return:
//		> 0, SUCCESS
//		= 0, PROPERTY NOT EXISTS
//		< 0, ERROR
//
//	Supported Property Name:
//
//		AWG_HighPowerMode
//
//		CenterFrequency_MHz
//		FramesUsed
//		MaxPacketLength_s
//		MaxSymbolsUsed
//		MeasurementOffset_11ag
//		MeasurementOffset_11b
//		PowerRange
//		ShowSplashScreen
//		SubcarrierSpacing_KHz
//		TrackPhase
//		TriggerDelay_s
//		TriggerLevel_mV
//		TriggerStyle
//		UseAlternateSyncSequence
//		WindowType
//
//		VSA_Visible
//
//		WTA_Visible
//		WTA_MaxPacketLength_11b
//		WTA_PowerRange_11b
//		WTA_TriggerLevel_11b
//		WTA_MaxSymbolsUsed_11ag
//		WTA_PowerRange_11ag
//		WTA_TriggerLevel_11ag
//
//		API_GatedSpectrum_Width
//		API_GatedSpectrum_AveragingStyle
//		API_GatedSpectrum_NumAverages
//
__declspec(dllexport) long _stdcall AgN4010_GetProperty(const char *lpszPropertyName,double *lpValue);
//	Return:
//		> 0, SUCCESS
//		= 0, PROPERTY NOT EXISTS
//		< 0, ERROR
//
//	Read-only property
//		AutoRange_PowerRange_11ag
//		AutoRange_TriggerLevel_mV_11ag
//		AutoRange_MaxPacketLength_s_11ag
//		AutoRange_MaxSymbolsUsed_11ag
//
//		Autorange_PowerRange_11b
//		Autorange_TriggerLevel_mV_11b
//		Autorange_MaxPacketLength_s_11b
//
__declspec(dllexport) long _stdcall AgN4010_Measure_ALL_11b(
		double	*lpddEVM,
		double	*lpddFreqErr_ppm,
	#if defined(__cplusplus)
		BOOL	boolForceInit = true);
	#else
		BOOL	boolForceInit);
	#endif
//	Return:
//		> 0, SUCCESS
//		= 0, OVER LOAD
//		< 0, ERROR
__declspec(dllexport) long _stdcall AgN4010_Measure_ALL_11ag(
		double	*lpddEVM,
		double	*lpddFreqErr_ppm,
		double	*lpddCFL,
		double	*lpddSpecFlatnessMargin,
		double	ddSpecFlatnessFreqArray[],
		long	*lpnSpecFlatnessFreqArraySize,
	#if defined(__cplusplus)
		BOOL	boolForceInit = true);
	#else
		BOOL	boolForceInit);
	#endif
//	Return:
//		> 0, SUCCESS
//		= 0, OVER LOAD
//		< 0, ERROR
//	Note:
//		1. value of *lpddSpecFlatnessMargin
//			A positive value indicates the minimum margin by which the PSD passed
//			this test. A negative value indicates the worst case amount by which
//			the PSD failed this test.
__declspec(dllexport) long _stdcall AgN4010_Measure_Demod_ALL_11ag(
		double	*lpddRmsEVM,
		double	*lpddFreqErr_ppm);
//	Return:
//		> 0, SUCCESS
//		= 0, OVER LOAD
//		< 0, ERROR
__declspec(dllexport) long _stdcall AgN4010_Measure_Demod_ALL_11b(
		double	*lpddPeakEVM,
		double	*lpddFreqErr_ppm);
//	Return:
//		> 0, SUCCESS
//		= 0, OVER LOAD
//		< 0, ERROR
__declspec(dllexport) long _stdcall AgN4010_Measure_SpectralMask_11ag(
		double	*lpddMargin_dB,
		double	*lpddRefLevelResult_dBm,
		long	*lpnNumSpecPoints,
		double	ddFreqArray[],
		double	ddAmplArray[],
	#if defined(__cplusplus)
		BOOL	boolForceInit = true);
	#else
		BOOL	boolForceInit);
	#endif
//	Return:
//		> 0, SUCCESS
//		= 0, OVER LOAD
//		< 0, ERROR
//	Note:
//		1. value of *lpddSpecFlatnessMargin
//			A positive value indicates the minimum margin by which the PSD passed
//			this test. A negative value indicates the worst case amount by which
//			the PSD failed this test.
__declspec(dllexport) long _stdcall AgN4010_Measure_SpectralMask_11b(
		double	*lpddMargin_dB,
		double	*lpddRefLevelResult_dBm,
		long	*lpnNumSpecPoints,
		double	ddFreqArray[],
		double	ddAmplArray[],
	#if defined(__cplusplus)
		BOOL	boolForceInit = true);
	#else
		BOOL	boolForceInit);
	#endif
//	Return:
//		> 0, SUCCESS
//		= 0, OVER LOAD
//		< 0, ERROR
//	Note:
//		1. value of *lpddSpecFlatnessMargin
//			A positive value indicates the minimum margin by which the PSD passed
//			this test. A negative value indicates the worst case amount by which
//			the PSD failed this test.
__declspec(dllexport) long _stdcall AgN4010_Measure_AveragePower(
		double	*lpddAvgPower_dBm);
//	Return:
//		> 0, SUCCESS
//		= 0, OVER LOAD
//		< 0, ERROR
//
//	Instrument settings affecting this mesurement
//		CenterFrequency
//		MaxPacketLength
//		PowerRange
//		TriggerStyle
//		TriggerLevel
//		TriggerHoldoff
//		TriggerDelay
__declspec(dllexport) long _stdcall AgN4010_MeasureEx_AveragePower(
		double	*lpddAvgPower_dBm);
//	Return:
//		> 0, SUCCESS
//		= 0, OVER LOAD
//		< 0, ERROR
//
//	Instrument settings affecting this mesurement
//		CenterFrequency
//		MaxPacketLength
//		PowerRange
//		TriggerStyle
//		TriggerLevel
//		TriggerHoldoff
//		TriggerDelay
__declspec(dllexport) long _stdcall AgN4010_Measure_CarrierSuppression_dB_11b(
		double	*lpddSuppression_dB,
	#if defined(__cplusplus)
		BOOL	boolForceInit = true);
	#else
		BOOL	boolForceInit);
	#endif
//	Return:
//		> 0, SUCCESS
//		= 0, OVER LOAD
//		< 0, ERROR
__declspec(dllexport) long _stdcall AgN4010_ARB_DownloadEx(const char *lpszWildcard
		,enum enumARBDownload_FileTypeOption enumFileTypeOption);
//	Return:
//		> 0, THE NUMBERS OF DOWNLOADED FILES
//		= 0, NO FILES WERE DOWNLOADED
//		< 0, ERROR
__declspec(dllexport) long _stdcall AgN4010_ARB_Download(const char *lpszSegmentPath);
//	Return:
//		> 0, THE NUMBERS OF DOWNLOADED FILES
//		= 0, NO FILES WERE DOWNLOADED
//		< 0, ERROR
__declspec(dllexport) long _stdcall AgN4010_ARB_Select_Sequence(
		const char *lpszSequenceFile,
		double ddLevel_dBm,
		double ddOffsetFrequency_MHz,
		long nSamplingRate_MHz);
//	Return:
//		>= 0, SUCCESS
//		< 0, ERROR
__declspec(dllexport) long _stdcall AgN4010_ARB_Play_Segment(
		const char *lpszSegmentFile,
		double ddLevel_dBm,
		double ddOffsetFrequency_MHz,
		long nSamplingRate_MHz);
//	Return:
//		>= 0, SUCCESS
//		< 0, ERROR
__declspec(dllexport) long _stdcall AgN4010_ARB_Select_Sequence_11ag(
		const char *lpszSequenceFile,
		double ddLevel_dBm,
		double ddOffsetFrequency_MHz);
//	Return:
//		>= 0, SUCCESS
//		< 0, ERROR
__declspec(dllexport) long _stdcall AgN4010_ARB_Play_Segment_11ag(
		const char *lpszSegmentFile,
		double ddLevel_dBm,
		double ddOffsetFrequency_MHz);
//	Return:
//		>= 0, SUCCESS
//		< 0, ERROR
__declspec(dllexport) long _stdcall AgN4010_ARB_Select_Sequence_11b(
		const char *lpszSequenceFile,
		double ddLevel_dBm,
		double ddOffsetFrequency_MHz);
//	Return:
//		>= 0, SUCCESS
//		< 0, ERROR
// Note:
//		1. ddLevel_dBm must be between -90 and -15 dBm
__declspec(dllexport) long _stdcall AgN4010_ARB_Play_Segment_11b(
		const char *lpszSegmentFile,
		double ddLevel_dBm,
		double ddOffsetFrequency_MHz);
//	Return:
//		>= 0, SUCCESS
//		< 0, ERROR
// Note:
//		1. ddLevel_dBm must be between -90 and -15 dBm
__declspec(dllexport) long _stdcall AgN4010_ARB_TriggerSequence();
//	Return:
//		>= 0, SUCCESS
//		< 0, ERROR

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -