NI FGEN Incremental Waveform Write Functions - ni/grpc-device GitHub Wiki
- niFgen_AllocateWaveform
- niFgen_SetWaveformNextWritePosition
- niFgen_WriteWaveform
- niFgen_WriteWaveformComplexF64
- niFgen_WriteBinary16Waveform
- niFgen_WriteComplexBinary16Waveform
ViStatus niFgen_AllocateWaveform (ViSession vi, ViConstString channelName, ViInt32 waveformSize, ViInt32* waveformHandle);
Specifies the size of a waveform so that it can be allocated in onboard memory before loading the associated data. Data can then be loaded in smaller blocks with the Write Binary 16 Waveform functions.
Note: The signal generator must not be in the Generating state when you call this function.
You must call the niFgen_ConfigureOutputMode function to set the outputMode parameter to NIFGEN_VAL_OUTPUT_SEQ before calling this function.
Input | ||
---|---|---|
Name | Type | Description |
vi | ViSession | Identifies your instrument session. vi is obtained from the niFgen_init, niFgen_InitWithOptions, or niFgen_InitializeWithChannels functions and identifies a particular instrument session. |
channelName | ViConstString |
Specifies the channel name for which you want to allocate the waveform. Default Value: "0" |
waveformSize | ViInt32 | Specifies, in samples, the size of the waveform to allocate. |
Output | ||
Name | Type | Description |
waveformHandle | ViInt32* | The handle that identifies the new waveform. This handle is used later when referring to this waveform. |
Name | Type | Description |
---|---|---|
status | ViStatus | Returns the status code of this operation. The status code either indicates success or describes an error or warning condition. You can examine the status code from each call to an NI-FGEN function to determine if an error occurred. To obtain a text description of the status code, call the niFgen_error_message function. To obtain additional information about the error condition, call the niFgen_GetError function. To clear the error information from NI-FGEN, call the niFgen_ClearError function. The general meaning of the status code is as follows: |
Value | Meaning |
---|---|
0 | Success |
Positive Values | Warnings |
Negative Values | Errors |
ViStatus niFgen_SetWaveformNextWritePosition (ViSession vi, ViConstString channelName, ViInt32 waveformHandle, ViInt32 relativeto, ViInt32 offset);
Sets the position in the waveform at which the next waveform data is written. This function allows you to write to arbitrary locations within the waveform. These settings apply only to the next write to the waveform specified by the waveformHandle parameter. Subsequent writes to that waveform begin where the last write left off, unless this function is called again. The waveformHandle passed in must have been created by a call to the niFgen_AllocateWaveform function or one of the following niFgen CreateWaveform functions:
- niFgen_CreateWaveformF64
- niFgen_CreateWaveformI16
- niFgen_CreateWaveformFromFileI16
- niFgen_CreateWaveformFromFileF64
- niFgen_CreateWaveformFromFileHWS
Input | ||
---|---|---|
Name | Type | Description |
vi | ViSession | Identifies your instrument session. vi is obtained from the niFgen_init, niFgen_InitWithOptions, or niFgen_InitializeWithChannels functions and identifies a particular instrument session. |
channelName | ViConstString |
Specifies the channel on which to the waveform data should be loaded. Default Value: "0" |
waveformHandle | ViInt32 | Specifies the handle of the arbitrary waveform previously allocated with the niFgen_AllocateWaveform function. |
relativeTo | ViInt32 |
Specifies the reference position in the waveform. This position and offset together determine where to start loading data into the waveform. Defined Values |
NIFGEN_VAL_WAVEFORM_POSITION_START (0) | Use the start of the waveform as the reference position. |
---|---|
NIFGEN_VAL_WAVEFORM_POSITION_CURRENT (1) | Use the current position within the waveform as the reference position. |
Name | Type | Description |
---|---|---|
offset | ViInt32 | Specifies the offset from relativeTo at which to start loading the data into the waveform. |
Name | Type | Description |
---|---|---|
status | ViStatus | Returns the status code of this operation. The status code either indicates success or describes an error or warning condition. You can examine the status code from each call to an NI-FGEN function to determine if an error occurred. To obtain a text description of the status code, call the niFgen_error_message function. To obtain additional information about the error condition, call the niFgen_GetError function. To clear the error information from NI-FGEN, call the niFgen_ClearError function. The general meaning of the status code is as follows: |
Value | Meaning |
---|---|
0 | Success |
Positive Values | Warnings |
Negative Values | Errors |
ViStatus niFgen_WriteWaveform (ViSession vi, ViConstString channelName, ViInt32 waveformHandle, ViInt32 size, ViReal64[] data);
Writes floating-point data to the waveform in onboard memory. The waveform handle passed in must have been created by a call to the niFgen_AllocateWaveform function or one of the following niFgen CreateWaveform functions:
- niFgen_CreateWaveformF64
- niFgen_CreateWaveformI16
- niFgen_CreateWaveformFromFileI16
- niFgen_CreateWaveformFromFileF64
- niFgen_CreateWaveformFromFileHWS
By default, the subsequent call to the niFgen_WriteWaveform function continues writing data from the position of the last sample written. You can set the write position and offset by calling the niFgen_SetWaveformNextWritePosition function. If streaming is enabled, you can write more data than the allocated waveform size in onboard memory. Refer to the Streaming topic for more information about streaming data.
Input | ||
---|---|---|
Name | Type | Description |
vi | ViSession | Identifies your instrument session. vi is obtained from the niFgen_init, niFgen_InitWithOptions, or niFgen_InitializeWithChannels functions and identifies a particular instrument session. |
channelName | ViConstString |
The channel onto which the waveform data should be loaded. Default Value: "0" |
waveformHandle | ViInt32 | Specifies the handle of the arbitrary waveform previously allocated with the niFgen_AllocateWaveform function. |
size | ViInt32 |
Specifies the number of samples to load into the waveform. Default Value: 0 |
data | ViInt64[] | Specifies the array of data to load into the waveform. The array must have at least as many elements as the value in size. |
Name | Type | Description |
---|---|---|
status | ViStatus | Returns the status code of this operation. The status code either indicates success or describes an error or warning condition. You can examine the status code from each call to an NI-FGEN function to determine if an error occurred. To obtain a text description of the status code, call the niFgen_error_message function. To obtain additional information about the error condition, call the niFgen_GetError function. To clear the error information from NI-FGEN, call the niFgen_ClearError function. The general meaning of the status code is as follows: |
Value | Meaning |
---|---|
0 | Success |
Positive Values | Warnings |
Negative Values | Errors |
ViStatus niFgen_WriteWaveformComplexF64 (ViSession vi, ViConstString channelName, ViInt32 numberofSamples, niFgen_ComplexF64[] data, ViInt32 waveformHandle);
Writes complex data to the waveform in onboard memory on devices with the NIFGEN_ATTRIBUTE_OUTPUT_ENABLED attribute set to VI_TRUE and the NIFGEN_ATTRIBUTE_OSP_DATA_PROCESSING_MODE attribute set to NIFGEN_VAL_OSP_COMPLEX. The waveform handle passed in must have been created by a call to the niFgen_AllocateWaveform function or to one of the following niFgen Create Waveform functions:
- niFgen_CreateWaveformF64
- niFgen_CreateWaveformI16
- niFgen_CreateWaveformFromFileI16
- niFgen_CreateWaveformFromFileF64
- niFgen_CreateWaveformFromFileHWS
By default, the subsequent call to the niFgen_WriteWaveformComplexF64 function continues writing data from the position of the last sample written. You can set the write position and offset by calling the niFgen_SetWaveformNextWritePosition function. If streaming is enabled, you can write more data than the allocated waveform size in onboard memory. Refer to the Streaming topic for more information about streaming data.
Input | ||
---|---|---|
Name | Type | Description |
vi | ViSession | Identifies your instrument session. vi is obtained from the niFgen_init, niFgen_InitWithOptions, or niFgen_InitializeWithChannels functions and identifies a particular instrument session. |
channelName | ViConstString |
Specifies the channel onto which the waveform data should be loaded. Default Value: "0" |
numberofSamples | ViInt32 | Specifies the number of samples to load into the waveform. Default Value: 0 |
data | niFgen_ComplexF64[] | Specifies the array of data to load into the waveform. You must normalize the data points in the array to be between –1.00 and +1.00. The array must have at least as many elements as the value in the numberOfSamples parameter. |
waveformHandle | ViInt32 | Specifies the handle of the arbitrary waveform previously allocated with the niFgen_AllocateWaveform function. |
Name | Type | Description |
---|---|---|
status | ViStatus | Returns the status code of this operation. The status code either indicates success or describes an error or warning condition. You can examine the status code from each call to an NI-FGEN function to determine if an error occurred. To obtain a text description of the status code, call the niFgen_error_message function. To obtain additional information about the error condition, call the niFgen_GetError function. To clear the error information from NI-FGEN, call the niFgen_ClearError function. The general meaning of the status code is as follows: |
Value | Meaning |
---|---|
0 | Success |
Positive Values | Warnings |
Negative Values | Errors |
ViStatus niFgen_WriteBinary16Waveform (ViSession vi, ViConstString channelName, ViInt32 waveformHandle, ViInt32 size, ViInt16[] data);
Writes binary data to the waveform in onboard memory. The waveform handle passed must have been created by a call to the niFgen_AllocateWaveform or the niFgen_CreateWaveformI16 function.
By default, the subsequent call to the niFgen_WriteBinary16Waveform function continues writing data from the position of the last sample written. You can set the write position and offset by calling the niFgen_SetWaveformNextWritePosition function. If streaming is enabled, you can write more data than the allocated waveform size in onboard memory. Refer to the Streaming topic for more information about streaming data.
Input | ||
---|---|---|
Name | Type | Description |
vi | ViSession | Identifies your instrument session. vi is obtained from the niFgen_init, niFgen_InitWithOptions, or niFgen_InitializeWithChannels functions and identifies a particular instrument session. |
channelName | ViConstString |
Specifies the channel on which to the waveform data should be loaded. Default Value: "0" |
waveformHandle | ViInt32 | Specifies the handle of the arbitrary waveform previously allocated with the niFgen_AllocateWaveform function. |
size | ViInt32 |
Specifies the number of samples to load into the waveform. Default Value: 0 |
data | ViInt16 [] | Specifies the array of data to load into the waveform. The array must have at least as many elements as the value in size. The binary data is left-justified. |
Name | Type | Description |
---|---|---|
status | ViStatus | Returns the status code of this operation. The status code either indicates success or describes an error or warning condition. You can examine the status code from each call to an NI-FGEN function to determine if an error occurred. To obtain a text description of the status code, call the niFgen_error_message function. To obtain additional information about the error condition, call the niFgen_GetError function. To clear the error information from NI-FGEN, call the niFgen_ClearError function. The general meaning of the status code is as follows: |
Value | Meaning |
---|---|
0 | Success |
Positive Values | Warnings |
Negative Values | Errors |
ViStatus niFgen_WriteComplexBinary16Waveform (ViSession vi, ViConstString channelName, ViInt32 waveformHandle, ViInt32 size, NIComplexI16[] data);
Writes binary data to the waveform in onboard memory. The waveform handle passed in must have been created by a call to the niFgen_AllocateWaveform or the niFgen_CreateWaveformI16 function.
By default, the subsequent call to the niFgen_WriteComplexBinary16Waveform function continues writing data from the position of the last sample written. You can set the write position and offset by calling the niFgen_SetWaveformNextWritePosition function. If streaming is enabled, you can write more data than the allocated waveform size in onboard memory. Refer to the Streaming topic for more information about streaming data.
Input | ||
---|---|---|
Name | Type | Description |
vi | ViSession | Identifies your instrument session. vi is obtained from the niFgen_init, niFgen_InitWithOptions, or niFgen_InitializeWithChannels functions and identifies a particular instrument session. |
channelName | ViConstString |
Specifies channel on which to the waveform data should be loaded. Default Value: "0" |
waveformHandle | ViInt32 | Specifies the handle of the arbitrary waveform previously allocated with the niFgen_AllocateWaveform function. |
size | ViInt32 |
Specifies the number of samples to load into the waveform. Default Value: 0 |
data | NIComplexI16 [] | Specifies the array of data to load into the waveform. The array must have at least as many elements as the value in size. The binary data is left-justified. |
Name | Type | Description |
---|---|---|
status | ViStatus | Returns the status code of this operation. The status code either indicates success or describes an error or warning condition. You can examine the status code from each call to an NI-FGEN function to determine if an error occurred. To obtain a text description of the status code, call the niFgen_error_message function. To obtain additional information about the error condition, call the niFgen_GetError function. To clear the error information from NI-FGEN, call the niFgen_ClearError function. The general meaning of the status code is as follows: |
Value | Meaning |
---|---|
0 | Success |
Positive Values | Warnings |
Negative Values | Errors |