NI WLAN Analysis Toolkit

niWLANA_GetCurrentIterationOFDMDemodPilotEVMPerSymbolTrace

  • Updated2023-02-21
  • 2 minute(s) read

int32 __stdcall niWLANA_GetCurrentIterationOFDMDemodPilotEVMPerSymbolTrace (niWLANAnalysisSession session, char channelString[], int32 index[], float64 pilotEVMPerSymbol[], int32 dataArraySize, int32 *actualArraySize);

Purpose

Returns the EVM per symbol number for pilot subcarriers for each iteration when the toolkit processes the acquired burst. The toolkit obtains this trace from the niWLANA_GetCurrentIterationOFDMDemodEVMPerSymbolPerSubcarrierTrace function by averaging over the pilot subcarrier for each symbol.

To use this function, you must set the NIWLANA_OFDM_DEMOD_ENABLED and NIWLANA_OFDM_DEMOD_EVM_PER_SYMBOL_TRACE_ENABLED attributes to NIWLANA_VAL_TRUE.

You must use the following active channel string formats to query this function.

NIWLANA_STANDARD attribute setting NIWLANA_OFDM_DEMOD_COMBINED_SIGNAL_DEMODULATION_ENABLED attribute Active channel string syntax
NIWLANA_VAL_STANDARD_80211AG_OFDM, NIWLANA_VAL_STANDARD_80211J_OFDM, NIWLANA_VAL_STANDARD_80211P_OFDM, NIWLANA_VAL_STANDARD_80211G_DSSS_OFDM N.A. "" (empty string)
NIWLANA_VAL_STANDARD_80211N_MIMO_OFDM NIWLANA_VAL_FALSE "channelx"
"streamx"
NIWLANA_VAL_TRUE "" (empty string)
NIWLANA_VAL_STANDARD_80211AC_MIMO_OFDM NIWLANA_VAL_FALSE "[segmentx/]channely" ("segment0/" is optional if the NIWLANA_NUMBER_OF_SEGMENTS attribute is set to 1.)
"[segmentx/]streamy" ("segment0/" is optional if the NIWLANA_NUMBER_OF_SEGMENTS attribute is set to 1.)
NIWLANA_VAL_TRUE "segmentx"
NIWLANA_VAL_STANDARD_80211AH_MIMO_OFDM "channelx"
"streamx"
NIWLANA_VAL_STANDARD_80211AF_MIMO_OFDM "[segmentx/]channely" ("segment0/" is optional if the NIWLANA_NUMBER_OF_SEGMENTS attribute is set to 1.)
"[segmentx/]streamy" ("segment0/" is optional if the NIWLANA_NUMBER_OF_SEGMENTS attribute is set to 1.)
NIWLANA_VAL_STANDARD_80211AX_MIMO_OFDM False "[segmentx/]channely" ("segment0/" is optional if the NIWLANA_NUMBER_OF_SEGMENTS attribute is set to 1.)
"[segmentx/]streamy" ("segment0/" is optional if the NIWLANA_NUMBER_OF_SEGMENTS attribute is set to 1.)
"userx/[segmenty/]streamz"if the NIWLANA_RESULT_OFDM_DEMOD_PPDU_TYPE attribute is NIWLANA_VAL_OFDM_DEMOD_PPDU_TYPE_MU_PPDU ("segment0/" is optional if the NIWLANA_NUMBER_OF_SEGMENTS attribute is set to 1.)
True "[segmentx]"

Parameters

Input
Name Type Description
session niWLANAnalysisSession Specifies the niWLAN analysis session refnum.
channelString char[] Specifies the active channel string.
dataArraySize int32 Specifies the size of the pilotEvmPerSymbol array.
Output
Name Type Description
index int32[] Returns the indices of the symbols.
pilotEvmPerSymbol float64[] Returns the pilot EVM per symbol for each iteration during processing of the acquired burst. This value is expressed in dB.
actualArraySize int32* Returns the number of elements in the pilotEvmPerSymbol array. If the pilotEvmPerSymbol array is not large enough to hold all the samples, the function returns an error and this parameter returns the minimum expected size of the output array.

Return Value

Name Type Description
status int32 Returns the status code of this operation. The status code either indicates success or describes an error or warning condition. Examine the status code from each call to an niWLAN function to determine if an error has occurred.

To obtain a text description of the status code and additional information about the error condition, call the niWLANA_GetErrorString function.

The general meaning of the status code is as follows:

Value Meaning
0 Success
Positive Values Warnings
Negative Values Errors

Log in to get a better experience