Writes an arbitrary waveform to the NI-RFSG device starting at the position of the last data written in onboard memory.

Syntax

ViStatus __stdcall niRFSG_WriteArbWaveformComplexF64(ViSession vi, ViConstString waveformName, ViInt32 numberOfSamples, const NIComplexNumber waveformDataArray[], ViBoolean moreDataPending)

Remarks

This function accepts the complex baseband data in the form of complex doubles. If the waveform to write is already allocated using the niRFSG_AllocateArbWaveform, the moreDataPending parameter is ignored. The PXI-5670/5671 must be in the Configuration state before you call this function. When streaming is enabled, you can call this function when the PXIe-5672/5673/5673E or PXIe-5820/5830/5831/5832/5840/5841/5842 is in the Generation state.
Note

On the PXIe-5644/5645/5646, PXIe-5672/5673/5673E, and PXIe-5820/5830/5831/5832/5840/5841/5842, the moreDataPending parameter is always ignored. To write data in blocks on these devices, you must allocate the waveform before writing it.

Supported Devices: PXIe-5644/5645/5646, PXI-5670/5671, PXIe-5672/5673/5673E, PXIe-5820/5830/5831/5832/5840/5841/5842

Related Topics

Streaming

Assigning Properties or Attributes to a Waveform

Parameters

NameDirectionTypeDescription
vi[in]ViSession

Identifies your instrument session. The ViSession handle is obtained from the niRFSG_Init function or the niRFSG_InitWithOptions function and identifies a particular instrument session.

waveformName[in]ViConstString

Specifies the name used to identify the waveform. This string is case-insensitive and alphanumeric, and it does not use reserved words.

numberOfSamples[in]ViInt32

Specifies the number of samples in the data array.

waveformDataArray[in]const NIComplexNumber[]

Specifies the array of data to load into the waveform. The array must have at least as many elements as the value in the size_in_samples parameter in the niRFSG_AllocateArbWaveform function.

moreDataPending[in]ViBoolean

Specifies whether or not the data block contains the end of the waveform. Set this parameter to VI_TRUE to allow data to be appended later to the waveform. Splitting the waveform into multiple data blocks can reduce the memory requirements of the write operation. Append data to a previously written waveform by using the same waveform in the name parameter. Set moreDataPending to VI_FALSE to indicate that this data block contains the end of the waveform. If the waveform is already allocated, this parameter is ignored.

Returns

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 instrument driver function to determine if an error occurred. To obtain a text description of the error code, call the niRFSG_GetError function. The general meaning of the status code is as follows:

Value

Meaning

0

Success

Positive Values

Warnings

Negative Values

Errors