Skip to content

NI RFmx SpecAn Advanced Functions

Alex Starche edited this page Feb 28, 2022 · 5 revisions

Advanced Functions

RFmxSpecAn_AnalyzeIQ1Waveform

int32 __stdcall RFmxSpecAn_AnalyzeIQ1Waveform (niRFmxInstrHandle instrumentHandle, char selectorString[], char resultName[], float64 x0, float64 dx, NIComplexSingle IQ[], int32 arraySize, int32 reset, int64 reserved);

Purpose

Performs the enabled measurements on the I/Q complex waveform that you specify in the IQ parameter. Call this function after configuring the signal and measurement attributes. You can fetch measurement results using the Fetch functions or result attributes. Use this function only if the RFMXINSTR_ATTR_RECOMMENDED_ACQUISITION_TYPE) value is either RFMXINSTR_VAL_RECOMMENDED_ACQUISITION_TYPE_IQ or RFMXINSTR_VAL_RECOMMENDED_ACQUISITION_TYPE_IQ_OR_SPECTRAL.

Note  Query the RFMXINSTR_ATTR_RECOMMENDED_ACQUISITION_TYPE attribute after calling the RFmxSpecAn_Commit) function.

Parameters

Input
Name Type Description
instrumentHandle niRFmxInstrHandle Identifies the RFmx session. You can obtain this parameter from the RFmxSpecAn_Initialize) function.
selectorString char[] Comprises the signal name. If you do not specify the signal name, the default signal instance is used.

Example:

""

"signal::sig1"

You can use the RFmxSpecAn_BuildSignalString) function to build the selector string).
resultName char[] Specifies the name to be associated with measurement results. Provide a unique name, such as "r1" to enable fetching of multiple measurement results and traces. This input accepts the result name with or without the "result::" prefix.
Example:
""
"result::r1"
"r1"
x0 float64 Specifies the start time of the IQ array. This value is expressed in seconds.
dx float64 Specifies the time interval between the samples in the input IQ array. This value is expressed in seconds. The reciprocal of dx indicates the I/Q rate of the input signal.
IQ NIComplexSingle[] Specifies an array of complex-valued time domain data. The real and imaginary parts of this complex data array correspond to the in-phase (I) and quadrature-phase (Q) data, respectively.
arraySize int32 Specifies the number of elements in the IQ array.
reset int32 Resets measurement averaging. If you enable averaging, set this parameter to TRUE for the first record and FALSE for the subsequent records.
reserved int64 Reserved for future use. Any value passed to this parameter will be ignored.

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 RFmx 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 RFmxSpecAn_GetError) function.

The general meaning of the status code is as follows:
Value Meaning
0 Success
Positive Values Warnings
Negative Values Errors

RFmxSpecAn_AnalyzeSpectrum1Waveform

int32 __stdcall RFmxSpecAn_AnalyzeSpectrum1Waveform (niRFmxInstrHandle instrumentHandle, char selectorString[], char resultName[], float64 x0, float64 dx, float32 spectrum[], int32 arraySize, int32 reset, int64 reserved);

Purpose

Performs the enabled measurements on the spectrum that you specify in the spectrum parameter. Call this function after configuring the signal and measurement attributes. You can fetch measurement results using the Fetch functions or result attributes. Use this function only if the RFMXINSTR_ATTR_RECOMMENDED_ACQUISITION_TYPE) value is either RFMXINSTR_VAL_RECOMMENDED_ACQUISITION_TYPE_SPECTRAL or RFMXINSTR_VAL_RECOMMENDED_ACQUISITION_TYPE_IQ_OR_SPECTRAL.

Note  Query the RFMXINSTR_ATTR_RECOMMENDED_ACQUISITION_TYPE attribute after calling the RFmxSpecAn_Commit) function.

Parameters

Input
Name Type Description
instrumentHandle niRFmxInstrHandle Identifies the RFmx session. You can obtain this parameter from the RFmxSpecAn_Initialize) function.
selectorString char[] Comprises the signal name. If you do not specify the signal name, the default signal instance is used.

Example:

""

"signal::sig1"

You can use the RFmxSpecAn_BuildSignalString) function to build the selector string).
resultName char[] Specifies the name to be associated with measurement results. Provide a unique name, such as "r1" to enable fetching of multiple measurement results and traces. This input accepts the result name with or without the "result::" prefix.
Example:
""
"result::r1"
"r1"
x0 float64 Specifies the start frequency of the spectrum. This value is expressed in Hz.
dx float64 Specifies the frequency interval between data points in the spectrum.
spectrum float32[] Specifies the real-value power spectrum.
arraySize int32 Specifies the number of elements in the spectrum array.
reset int32 Resets measurement averaging. If you enable averaging, set this parameter to TRUE for the first record and FALSE for the subsequent records.
reserved int64 Reserved for future use. Any value passed to this parameter will be ignored.

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 RFmx 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 RFmxSpecAn_GetError) function.

The general meaning of the status code is as follows:
Value Meaning
0 Success
Positive Values Warnings
Negative Values Errors

RFmxSpecAn_AbortMeasurements

int32 __stdcall RFmxSpecAn_AbortMeasurements (niRFmxInstrHandle instrumentHandle, char selectorString[]);

Purpose

Stops acquisition and measurements associated with signal instance that you specify in the selectorString parameter, which were previously initiated by the RFmxSpecAn_Initiate) function or measurement Read functions. Calling this function is optional, unless you want to stop a measurement before it is complete. This function executes even if there is an incoming error.

Parameters

Input
Name Type Description
instrumentHandle niRFmxInstrHandle Identifies the RFmx session. You can obtain this parameter from the RFmxSpecAn_Initialize) function.
selectorString char[] Comprises the signal name. If you do not specify the signal name, the default signal instance is used.

Example:

""

"signal::sig1"

You can use the RFmxSpecAn_BuildSignalString) function to build the selector string).

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 RFmx 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 RFmxSpecAn_GetError) function.

The general meaning of the status code is as follows:
Value Meaning
0 Success
Positive Values Warnings
Negative Values Errors

RFmxSpecAn_CreateSignalConfiguration

int32 __stdcall RFmxSpecAn_CreateSignalConfiguration (niRFmxInstrHandle instrumentHandle, char signalName[]);

Purpose

Creates a new instance of a signal.

Parameters

Input
Name Type Description
instrumentHandle niRFmxInstrHandle Identifies the RFmx session. You can obtain this parameter from the RFmxSpecAn_Initialize) function.
signalName char[] Specifies the name of the signal. This parameter accepts the signal name with or without the "signal::" prefix.

Example:

"signal::sig1"

"sig1"

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 RFmx 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 RFmxSpecAn_GetError) function.

The general meaning of the status code is as follows:
Value Meaning
0 Success
Positive Values Warnings
Negative Values Errors

RFmxSpecAn_CloneSignalConfiguration

int32 __stdcall RFmxSpecAn_CloneSignalConfiguration (niRFmxInstrHandle instrumentHandle, char oldSignalName[], char newSignalName[]);

Purpose

Creates a new instance of a signal by copying all the attribute values from an existing signal instance.

Parameters

Input
Name Type Description
instrumentHandle niRFmxInstrHandle Identifies the RFmx session. You can obtain this parameter from the RFmxSpecAn_Initialize) function.
oldSignalName char[] Specifies the name of an existing signal. This parameter accepts the signal name with or without the "signal::" prefix.

Example:

"signal::OldSigName"

"OldSigName"
newSignalName char[] Specifies the name of the new signal. This parameter accepts the signal name with or without the "signal::" prefix.

Example:

"signal::NewSigName"

"NewSigName"

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 RFmx 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 RFmxSpecAn_GetError) function.

The general meaning of the status code is as follows:
Value Meaning
0 Success
Positive Values Warnings
Negative Values Errors

RFmxSpecAn_DeleteSignalConfiguration

int32 __stdcall RFmxSpecAn_DeleteSignalConfiguration (niRFmxInstrHandle instrumentHandle, char signalName[]);

Purpose

Deletes an instance of a signal that you specify in the signalName parameter.

Parameters

Input
Name Type Description
instrumentHandle niRFmxInstrHandle Identifies the RFmx session. You can obtain this parameter from the RFmxSpecAn_Initialize) function.
signalName char[] Specifies the name of the signal. This parameter accepts the signal name with or without the "signal::" prefix.

Example:

"signal::sig1"

"sig1"

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 RFmx 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 RFmxSpecAn_GetError) function.

The general meaning of the status code is as follows:
Value Meaning
0 Success
Positive Values Warnings
Negative Values Errors

RFmxSpecAn_GetAllNamedResultNames

int32 __stdcall RFmxSpecAn_GetAllNamedResultNames( niRFmxInstrHandle instrumentHandle, char selectorString[], char resultNames[], int32 resultNamesBufferSize, int32* actualResultNamesSize, int32* defaultResultExists );

Purpose

Returns all the named result names of the signal that you specify in the Selector String parameter.

Parameters

Input
Name Type Description
instrumentHandle niRFmxInstrHandle Identifies the RFmx session. You can obtain this parameter from the RFmxSpecAn_Initialize) function.
selectorString char[] Comprises the signal name. If you do not specify the signal name, the default signal instance is used.

Example:

""

"signal::sig1"

You can use the RFmxSpecAn_BuildSignalString) function to build the selector string).
resultNamesBufferSize int32 Specifies the size of the resultNames array. Set the resultNamesBufferSize parameter to 0 to get the size of the resultNames array in the return value.
Output
Name Type Description
resultNames char[] Returns the comma delimited result names.
actualResultNamesSize int32* Returns the actual size of the resultNames array, if you pass NULL to resultNames array parameter and set the resultNamesBufferSize parameter to 0.
defaultResultExists int32* Indicates whether the default result exists.

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 RFmx 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 RFmxSpecAn_GetError) function.

The general meaning of the status code is as follows:
Value Meaning
0 Success
Positive Values Warnings
Negative Values Errors

RFmxSpecAn_ClearNamedResult

int32 __stdcall RFmxSpecAn_ClearNamedResult (niRFmxInstrHandle instrumentHandle, char selectorString[]);

Purpose

Clears a result instance specified by the result name in the selectorString parameter.

Parameters

Input
Name Type Description
instrumentHandle niRFmxInstrHandle Identifies the RFmx session. You can obtain this parameter from the RFmxSpecAn_Initialize) function.
selectorString char[] Comprises the signal name, and result name. If you do not specify the signal name, the default signal instance is used.

Example:

""

"signal::sig1"

"result::r1"

"signal::sig1/result::r1"

You can use the RFmxSpecAn_BuildSignalString )function to build the selector string).

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 RFmx 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 RFmxSpecAn_GetError) function.

The general meaning of the status code is as follows:
Value Meaning
0 Success
Positive Values Warnings
Negative Values Errors

RFmxSpecAn_ClearAllNamedResults

int32 __stdcall RFmxSpecAn_ClearAllNamedResults (niRFmxInstrHandle instrumentHandle, char selectorString[]);

Purpose

Clears all results for the signal that you specify in the selectorString parameter.

Parameters

Input
Name Type Description
instrumentHandle niRFmxInstrHandle Identifies the RFmx session. You can obtain this parameter from the RFmxSpecAn_Initialize) function.
selectorString char[] Comprises the signal name. If you do not specify the signal name, the default signal instance is used.

Example:

""

"signal::sig1"

You can use the RFmxSpecAn_BuildSignalString) function to build the selector string).

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 RFmx 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 RFmxSpecAn_GetError) function.

The general meaning of the status code is as follows:
Value Meaning
0 Success
Positive Values Warnings
Negative Values Errors

RFmxSpecAn_ClearNoiseCalibrationDatabase

int32 __stdcall RFmxSpecAn_ClearNoiseCalibrationDatabase (niRFmxInstrHandle instrumentHandle, char selectorString[]);

Purpose

Clears the noise calibration database used for noise compensation.

Parameters

Input
Name Type Description
instrumentHandle niRFmxInstrHandle Identifies the RFmx session. You can obtain this parameter from the RFmxSpecAn_Initialize) function.
selectorString char[] Comprises the signal name. If you do not specify the signal name, the default signal instance is used.

Example:

""

"signal::sig1"

You can use the RFmxSpecAn_BuildSignalString) function to build the selector string).

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 RFmx 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 RFmxSpecAn_GetError) function.

The general meaning of the status code is as follows:
Value Meaning
0 Success
Positive Values Warnings
Negative Values Errors

Table of Contents

Internal Development

Creating and Setting Up a gRPC Server

Server Security Support

Creating a gRPC Client

gRPC Client Examples

Session Utilities API Reference

Driver Documentation

gRPC API Differences From C API

Sharing Driver Sessions Between Clients

C API Docs
NI-DAQmx
NI-DCPOWER
NI-DIGITAL PATTERN DRIVER
NI-DMM
NI-FGEN
NI-FPGA
NI-RFmx Bluetooth
NI-RFmx NR
NI-RFmx WCDMA
NI-RFmx GSM
NI-RFmx CDMA2k
NI-RFmx Instr
NI-RFmx LTE
NI-RFmx SpecAn
NI-RFmx TD-SCDMA
NI-RFmx WLAN
NI-RFSA
NI-RFSG
NI-SCOPE
NI-SWITCH
NI-TCLK
NI-XNET
Clone this wiki locally