-
Notifications
You must be signed in to change notification settings - Fork 52
NI FGEN Incremental Waveform Write Functions
- 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 |
Creating and Setting Up a gRPC Server
Session Utilities API Reference
gRPC API Differences From C API
Sharing Driver Sessions Between Clients
C API Docs
NI-DAQmx
- gRPC API Differences From C API
- Task Configuration And Control
- Channel Configuration And Creation
- Timing
- Triggering
- Read Functions
- Write Functions
- Export Hardware Signals
- Scale Configuration
- Internal Buffer Configuration
- Advanced Functions
- System Configuration
- Error Handling
- Buffer Attributes
- Calibration Info Attributes
- Channel Attributes
- Device Attributes
- Export Signal Attributes
- Persisted Channel Attributes
- Persisted Scale Attributes
- Persisted Task Attributes
- Physical Channel Attributes
- Read Attributes
- Scale Attributes
- System Attributes
- Task Attributes
- Timing Attributes
- Trigger Attributes
- Watchdog Attributes
- Write Attributes
NI-DCPOWER
- Setup Functions
- Configure Functions
- Measurement Functions
- Control Functions
- Trigger And Event
- Attribute Functions
- Query Functions
- Calibration Functions
- Utility Functions
- Supported Device
- Source Attributes
- Transient Attributes
- Voltage Attributes
- Current Attributes
- Pulse Voltage Attributes
- Pulse Current Attributes
- Cutoff Attributes
- Measurement Attributes
- Trigger Attributes Functions
- Event Attributes
- Advanced Attributes
- Inherent Ivi Attributes
- Supported Device Attributes
NI-DIGITAL PATTERN DRIVER
- Init And Close Functions
- Session Locking Functions
- Utility Functions
- Error Handling Functions
- Calibration Functions
- Attributes Functions
- Pin Map Functions
- Low Level Functions
- Low Level Action Functions
- Pin Control Functions
- Static IO Functions
- Clock Generator Functions
- Levels And Timing Functions
- TDR Functions
- PPMU Configuration Functions
- DC Voltage Functions
- DC Current Functions
- PPMU Action Functions
- Pattern Configuration Functions
- Pattern Action Functions
- History Ram Functions
- Source Memory Functions
- Capture Memory Functions
- Triggers And Events Functions
- Conditional Jump Trigger Functions
- Sequencer Flag Functions
- Sequencer Register Functions
- Match Fail Combination Functions
- Pattern Results Functions
- Sort Results Functions
- Frequency Measurement Functions
- IVI Inherent Attributes
- Specific Driver Information Attributes, Read Only
- Driver Setup Information Attributes
- Device Attributes
- Pin Control Attributes
- Level Configuration Attributes
- Trigger Configuration Attributes
- PPMU Attributes
- Patterns Attributes
- Pattern Opcode Event Attributes
- Timing Offset Attributes
- Keep Alive Attributes
- Frequency Measurement Attributes
- Clock Generator Attributes
- History RAM
- Synchronization Attributes
- TDR Endpoint Termination Attributes
NI-FGEN
- Setup Functions
- Configuration Functions
- Standard Output Functions
- Arbitrary Waveform Output Functions
- Arbitrary Sequence Output Functions
- Incremental Waveform Write Functions
- Configure Clock Functions
- Trigger And Syncronizations Functions
- 5404 Routing Functions
- Script Output Functions
- Configure Onboard Signal Processing Functions
- Configure Peer To Peer Functions
- Attribute Functions
- Waveform Control Functions
- Error Functions
- Output Attributes
- Arbitrary Waveform Attributes
- Data Transfer Attributes
- Onboard Signal Processing Attributes
- Peer To Peer Attributes
- Standard Function Attributes
- Clock Attributes
- Event Attributes
- Triggering Attributes
- Instrument Specific Attributes
- Inherent IVI Attributes
- 5401 5411 5431
NI-RFmx Bluetooth
- gRPC API Differences From C API
- General Functions
- Configuration Functions
- Set And Get Attribute Functions
- Fetch Results Functions
- Utility Functions
- Build String Functions
- Advanced Functions
- General Attributes
- Trigger Attributes
- Packet Attributes
- Auto Detect Signal Attributes
- Modacc Attributes
- ACP Attributes
- Twenty dB Attributes
- Frequency Range Attributes
- TXP Attributes
- Advanced Attributes
NI-RFmx NR
- gRPC API Differences From C API
- General Functions
- Configuration Functions
- Set And Get Attributes Functions
- Fetch Results Functions
- Utility Functions
- Build String Functions
- Advanced Functions
- General Attributes
- Trigger Attributes
- Signal Detection Attributes
- Component Carrier Attributes
- List Attributes
- Modacc Attributes
- ACP Attributes
- CHP Attributes
- OBW Attributes
- SEM Attributes
- TXP Attributes
- Pvt Attributes
- Advanced Attributes
NI-RFmx LTE
- gRPC API Differences From C API
- General Functions
- Configuration Functions
- Ch Configuration Functions
- NB IoT Configuration Functions
- ModAcc Configuration Functions
- ACP Configuration Functions
- CHP Configuration Functions
- OBW Configuration Functions
- SEM Configuration Functions
- PVT Configuration Functions
- SlotPhase Configuration Functions
- SlotPower Configuration Functions
- Set And Get Attribute Functions
- ModAcc Fetch Functions
- ACP Fetch Functions
- CHP Fetch Functions
- OBW Fetch Functions
- SEM Fetch Functions
- PVT Fetch Functions
- SlotPhase Fetch Functions
- SlotPower Fetch Functions
- Utility Functions
- Build String Functions
- Advanced Functions
- General Attributes
- Trigger Attributes
- Component Carrier Attributes
- ModAcc Attributes
- ACP Attributes
- CHP Attributes
- OBW Attributes
- SEM Attributes
- PVT Attributes
- SlotPhase Attributes
- SlotPower Attributes
- Advanced Attributes
NI-RFmx SpecAn
- gRPC API Differences From C API
- General Functions
- Configuration Functions
- Set And Get Attribute Functions
- Read Functions
- Fetch Functions
- Utility Functions
- Marker Functions
- Build String Functions
- Advanced Functions
- General Attributes
- Trigger Attributes
- ACP Attributes
- Cdf Attributes
- CHP Attributes
- Fcnt Attributes
- Harm Attributes
- OBW Attributes
- SEM Attributes
- Spectrum Attributes
- Spur Attributes
- TXP Attributes
- AMPM Attributes
- Dpd Attributes
- IQ Attributes
- IM Attributes
- NF Attributes
- Phasenoise Attributes
- PAVT Attributes
- Advanced Attributes
NI-RFmx WLAN
- gRPC API Differences From C API
- General Functions
- Configuration Functions
- Set And Get Attribute Functions
- Fetch DSSS ModAcc Functions
- Fetch OFDM ModAcc Functions
- Fetch SEM Functions
- Fetch TXP Functions
- Fetch PowerRamp Functions
- Utility Functions
- Build String Functions
- Advanced Functions
- General Attributes
- Trigger Attributes
- OFDM Attributes
- Auto Detect Signal Attributes
- DSSS ModAcc Attributes
- OFDM ModAcc Attributes
- SEM Attributes
- TXP Attributes
- PowerRamp Attributes
- Advanced Attributes
NI-RFSA
- General Functions
- Configuration Functions
- Acquisition Functions
- Utility Functions
- Calibration Functions
- General Attributes
- Vertical Attributes
- Signal Path Attributes
- Acquisition Attributes
- Acquisition Attributes
- Triggers Attributes
- Events Attributes
- Device Characteristics Attributes
- Peer To Peer Streaming Attributes
- Configuration List Attributes
- Inherent IVI Properties Attributes
- De-embedding Attributes
- Self Calibration Attributes
- Factory Calibration Attributes
- External Alignment Attributes
- Device Specific Attributes
NI-RFSG
- General Functions
- Generation Configuration
- Utility Functions
- Calibration Functions
- Arb Attributes
- Clock Attributes
- Configuration List Attributes
- De-embedding Attributes
- Device Characteristics Attributes
- Device Specific Attributes
- Events Attributes
- External Calibration Attributes
- Inherent IVI Attributes Attributes
- IQ Impairment Attributes
- Load Configurations Attributes
- Modulation Attributes
- Obsolete Attributes
- Peer To Peer Attributes
- RF Attributes
- Self Calibration Attributes
- Triggers Attributes
NI-SCOPE
- Setup Functions
- Configure Functions
- Attribute Functions
- Acquisition Functions
- Measurement Functions
- Calibrate Functions
- Utility Funcitons
- Error Handling Functions
- IVI Compliance Or Obsolete Functions
- Vertical Attributes
- Horizontal Attributes
- Trigger Attributes
- Clocking Attributes
- Synchronization Attributes
- Acquisition Attributes
- Waveform Measurements Attributes
- Onboard Signal Processing Attributes
- Peer To Peer Streaming Attributes
- Device Attributes
- IVI Or Obsolete Attributes
- Instrument Capabilities Attributes
- If Digitizer Attributes
NI-XNET
- gRPC API differences from C APIs
- General Functions
- Cluster Properties
- Database Properties
- Device Properties
- ECU Properties
- Frame Properties
- Interface Properties
- LIN Schedule Entry Properties
- LIN Schedule Properties
- PDU Properties
- Session Ethernet Properties
- Session Frame Properties
- Session Interface Properties
- Session Properties
- Session SAE J1939 Properties
- Signal Properties
- Subframe Properties
- System Properties
- IP-Stack Functions
- Socket Options
- Socket Functions