Skip to content

NI RFmx NR Advanced Functions

Ryan Eckenrode edited this page Mar 1, 2022 · 4 revisions

Advanced Functions

RFmxNR_AbortMeasurements

int32 __stdcall RFmxNR_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 RFmxNR_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 Specifies the instrument session. The RFmx driver obtains this parameter from the RFmxNR_Initialize) function.
selectorString char[] Specifies a selector string) comprising of the signal name. If you do not specify the signal name, the default signal instance is used.
Example:
"signal::sig1"
You can use the RFmxNR_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 RFmxNR_GetError) function.

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

Rfmxnr_analyze

RFmxNR_AnalyzeIQ1Waveform

int32 __stdcall RFmxNR_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 IQ parameter. Call this function after you configure the signal and measurement attributes. You can fetch measurement results using the Fetch functions or result attributes in the attribute node. Use this function only if the Recommended Acquisition Type attribute value is either IQ or IQorSpectral. When using the Analysis-Only mode in RFmxNR, the RFmx driver ignores the RFmx hardware settings such as reference level and attenuation. The only RF hardware settings that are not ignored are the center frequency and trigger type, since it is needed for spectral measurement traces as well as some measurements such as ModAcc, ACP, and SEM.

Parameters

Input
Name Type Description
instrumentHandle niRFmxInstrHandle Specifies the instrument session. The RFmx driver obtains this parameter from the RFmxNR_Initialize) function.
selectorString char[] Specifies the signal name and result name. The result name can either be specified through this input or the resultName parameter. If you do not specify the signal name, the default signal instance is used. If you do not specify the result name in this parameter, either the result name specified by the resultName parameter or the default result instance is used.
Example:
""
"signal::sig1"
"result::r1"
"signal::sig1/result::r1"
You can use the RFmxNR_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 input Y array. This value is expressed in seconds.
dx float64 Specifies the frequency interval between data points in the spectrum.
IQ NIComplexSingle[] Specifies the 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 size of the array. Set the arraySize parameter to 0 to get the size of all the arrays in the actualArraySize parameter.
reset int32 Resets measurement averaging. If you enable averaging, set this parameter to TRUE for first record and FALSE for 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 RFmxNR_GetError) function.

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

RFmxNR_AnalyzeSpectrum1Waveform

int32 __stdcall RFmxNR_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 I/Q complex waveform that you specify in spectrum parameter. Call this function after you configure the signal and measurement attributes. You can fetch measurement results using the Fetch functions or result attributes in the attribute node. Use this function only if the Recommended Acquisition Type attribute value is either spectral or IQorSpectral. When using the Analysis-Only mode in RFmxNR, the RFmx driver ignores the RFmx hardware settings such as reference level and attenuation. The only RF hardware settings that are not ignored are the center frequency and trigger type, since it is needed for spectral measurement traces as well as some measurements such as ModAcc, ACP, and SEM.

Parameters

Input
Name Type Description
instrumentHandle niRFmxInstrHandle Specifies the instrument session. The RFmx driver obtains this parameter from the RFmxNR_Initialize) function.
selectorString char[] Specifies the signal name and result name. The result name can either be specified through this input or the resultName parameter. If you do not specify the signal name, the default signal instance is used. If you do not specify the result name in this parameter, either the result name specified by the resultName parameter or the default result instance is used.
Example:
""
"signal::sig1"
"result::r1"
"signal::sig1/result::r1"
You can use the RFmxNR_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 time interval between the samples in the input Y array. This value is expressed in seconds. The reciprocal of dx indicates the I/Q rate of the input signal.
spectrum float32[] Contains the real-value power spectrum.
arraySize int32 Specifies the size of the array. Set the arraySize parameter to 0 to get the size of all the arrays in the actualArraySize parameter.
reset int32 Resets measurement averaging. If you enable averaging, set this parameter to TRUE for first record and FALSE for 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 RFmxNR_GetError) function.

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

RFmxNR_CreateSignalConfiguration

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

Purpose

Creates a new instance of a signal.

Parameters

Input
Name Type Description
instrumentHandle niRFmxInstrHandle Specifies the instrument session. The RFmx driver obtains this parameter from the RFmxNR_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 RFmxNR_GetError) function.

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

RFmxNR_CloneSignalConfiguration

int32 __stdcall RFmxNR_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 Specifies the instrument session. The RFmx driver obtains this parameter from the RFmxNR_Initialize) function.
oldSignalName char[] Specifies the name of the 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 RFmxNR_GetError) function.

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

RFmxNR_DeleteSignalConfiguration

int32 __stdcall RFmxNR_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 Specifies the instrument session. The RFmx driver obtains this parameter from the RFmxNR_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 RFmxNR_GetError) function.

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

List

RFmxNR_CreateList

int32 __stdcall RFmxNR_CreateList (niRFmxInstrHandle instrumentHandle, char listName[]);

Purpose

Creates a new list instance. Call the RFmxNR_CreateListStep) function to add steps to the list. Alternatively, you can also specify the number of list steps using the RFMXNR_ATTR_NUMBER_OF_STEPS) attribute. supported devices : PXIe-5830/5831/5832/5840/5841

Parameters

Input
Name Type Description
instrumentHandle niRFmxInstrHandle Specifies the instrument session. The RFmx driver obtains this parameter from the RFmxNR_Initialize) function.
listName char[] Specifies the name of the list. This parameter accepts the list name with or without the "list::" prefix.
Example:
"list::samplelist1"
"samplelist1"
You can use the RFmxNR_BuildListString) function to build the list name.

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 RFmxNR_GetError) function.

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

RFmxNR_CreateListStep

int32 __stdcall RFmxNR_CreateListStep (niRFmxInstrHandle instrumentHandle, char selectorString[], int32* createdStepIndex);

Purpose

Creates a new list step instance in a list. supported devices : PXIe-5830/5831/5832/5840/5841

Parameters

Input
Name Type Description
instrumentHandle niRFmxInstrHandle Specifies the instrument session. The RFmx driver obtains this parameter from the RFmxNR_Initialize) function.
selectorString char[] Specifies the name of the list. This parameter accepts the list name with or without the "list::" prefix.
Example:
"list::samplelist1"
"samplelist1"
You can use the RFmxNR_BuildListString) function to build the selector string or use the selectorString parameter from the RFmxNR_CreateList) function.
Output
Name Type Description
createdStepIndex int32* Returns the created list step index.

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 RFmxNR_GetError) function.

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

RFmxNR_DeleteList

int32 __stdcall RFmxNR_DeleteList (niRFmxInstrHandle instrumentHandle, char listName[]);

Purpose

Deletes the list instance and all the list steps that you specify in the listName parameter. When a list step is deleted, all the instances of attributes associated with the list step are also removed. supported devices : PXIe-5830/5831/5832/5840/5841

Parameters

Input
Name Type Description
instrumentHandle niRFmxInstrHandle Specifies the instrument session. The RFmx driver obtains this parameter from the RFmxNR_Initialize) function.
listName char[] Specifies the name of the list. This parameter accepts the list name with or without the "list::" prefix.
Example:
"list::samplelist1"
"samplelist1"
You can use the RFmxNR_BuildListString) function to build the list name.

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 RFmxNR_GetError) function.

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

RFmxNR_BuildListString

int32 __stdcall RFmxNR_BuildListString (char listName[], char resultName[], int32 selectorStringLength, char selectorString[]);

Purpose

Creates the list string.

Parameters

Input
Name Type Description
listName char[] Specifies the name of the list. This parameter accepts the list name with or without the "list::" prefix.

Example:
"list::samplelist1"
"samplelist1"
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"
selectorStringLength int32 Specifies the length of the selector string. Set this parameter to 0 to get the minimum buffer size required to build the selector string.
Output
Name Type Description
selectorString char[] Returns the selector string created by this function.

Return Value

Name Type Description
statusOrRequiredSize 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.

When the statusOrRequiredSize return value returns the buffer size, the status code is not returned.

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

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

RFmxNR_BuildListStepString

int32 __stdcall RFmxNR_BuildListStepString (char listName[], char resultName[], int32 stepNumber, int32 selectorStringLength, char selectorString[]);

Purpose

Creates the list step string.

Parameters

Input
Name Type Description
listName char[] Specifies the name of the list. This parameter accepts the list name with or without the "list::" prefix.

Example:
"list::samplelist1"
"samplelist1"
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"
stepNumber int32 Specifies the list step number.
selectorStringLength int32 Specifies the length of the selector string. Set this parameter to 0 to get the minimum buffer size required to build the selector string.
Output
Name Type Description
selectorString char[] Returns the selector string created by this function.

Return Value

Name Type Description
statusOrRequiredSize 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.

When the statusOrRequiredSize return value returns the buffer size, the status code is not returned.

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

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

RFmxNR_GetAllNamedResultNames

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

Purpose

Returns the named result names of the signal that you specify in the selectorString parameter.

Parameters

Input
Name Type Description
instrumentHandle niRFmxInstrHandle Specifies the instrument session. The RFmx driver obtains this parameter from the RFmxNR_Initialize) function.
selectorString char[] Specifies a selector string) comprising of the signal name. If you do not specify the signal name, the default signal instance is used.
Example:
"signal::sig1"
You can use the RFmxNR_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 actualResultNamesSize parameter.
Output
Name Type Description
resultNames char[] Returns an array of result names.
actualResultNamesSize int32* Returns the actual size of the resultNames array, if you pass NULL to resultNames 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 RFmxNR_GetError) function.

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

RFmxNR_ClearNamedResult

int32 __stdcall RFmxNR_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 Specifies the instrument session. The RFmx driver obtains this parameter from the RFmxNR_Initialize) function.
selectorString char[] Specifies a selector string) comprising of the signal name and the result name. If you do not specify the signal name, the default signal instance is used. If you do not specify the result name, the default result instance is used.
Example:
"signal::sig1"
"result::r1"
"signal::sig1/result::r1"
You can use the RFmxNR_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 RFmxNR_GetError) function.

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

RFmxNR_ClearNoiseCalibrationDatabase

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

Purpose

Clears the noise calibration database used for noise compensation.

Parameters

Input
Name Type Description
instrumentHandle niRFmxInstrHandle Specifies the instrument session. The RFmx driver obtains this parameter from the RFmxNR_Initialize) function.
selectorString char[] Specifies a selector string) comprising of the signal name. If you do not specify the signal name, the default signal instance is used.
Example:
"signal::sig1"
You can use the RFmxNR_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 RFmxNR_GetError) function.

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

RFmxNR_ClearAllNamedResults

int32 __stdcall RFmxNR_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 Specifies the instrument session. The RFmx driver obtains this parameter from the RFmxNR_Initialize) function.
selectorString char[] Specifies a selector string) comprising of the signal name. If you do not specify the signal name, the default signal instance is used.
Example:
"signal::sig1"
You can use the RFmxNR_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 RFmxNR_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