RfsaIQAcquisition.MemoryOptimizedFetchIQMultiRecordComplex(Int64, Int64, Int64, PrecisionTimeSpan, ComplexInt16[,], RfsaWaveformInfo[]) Method
- Updated2025-07-17
- 2 minute(s) read
Rfsa
Fetches I/Q data from multiple records in a single acquisition to optimize memory.
Namespace: NationalInstruments.ModularInstruments.NIRfsa
Assembly: NationalInstruments.ModularInstruments.NIRfsa.Fx45 (in NationalInstruments.ModularInstruments.NIRfsa.Fx45.dll) Version: 2025
Syntax
public ComplexInt16[,] MemoryOptimizedFetchIQMultiRecordComplex( long startingRecord, long numberOfRecords, long numberOfSamples, PrecisionTimeSpan timeout, ref ComplexInt16[,] data, out RfsaWaveformInfo[] waveformInfo )
Public Function MemoryOptimizedFetchIQMultiRecordComplex ( startingRecord As Long, numberOfRecords As Long, numberOfSamples As Long, timeout As PrecisionTimeSpan, ByRef data As ComplexInt16(,), <OutAttribute> ByRef waveformInfo As RfsaWaveformInfo() ) As ComplexInt16(,)
Parameters
- startingRecord Int64
- Specifies the first record to retrieve. Record numbers are zero-based.
- numberOfRecords Int64
- Specifies the number of records to fetch.
- numberOfSamples Int64
- Specifies the number of samples per record.
- timeout PrecisionTimeSpan
- Specifies the time, in seconds, allotted for the method to complete before returning a timeout error. A value of MaxValue specifies the method waits until all data is available. A value of 0 specifies the method immediately returns available data.
- data ComplexInt16
- Returns the acquired waveform. New memory won't be allocated if the array is not null and the Lengths of its Dimension 0 and Dimension 1 are same as the numberOfRecords and the numberOfSamples respectively.
- waveformInfo RfsaWaveformInfo
- Contains the absolute and relative timestamps for the operation, the time interval, and the actual number of samples read.
Return Value
ComplexInt16The acquired waveform for each record fetched.
Exceptions
Exception | Condition |
---|---|
ObjectDisposedException | The MemoryOptimizedFetchIQMultiRecordComplexT(Int64, Int64, Int64, PrecisionTimeSpan, T, RfsaWaveformInfo) method was accessed after the associated NIRfsa object was disposed. |
Remarks
A fetch transfers acquired waveform data
from device memory to computer memory. The data was acquired to onboard memory previously by the
hardware after the acquisition was initiated. This method is not necessary if you use the
ReadIQSingleRecordComplex(PrecisionTimeSpan, RfsaWaveformInfo),
ReadIQSingleRecordComplexWaveform(PrecisionTimeSpan, RfsaWaveformInfo),
MemoryOptimizedReadIQSingleRecordComplex(PrecisionTimeSpan, ComplexDouble, RfsaWaveformInfo), or
MemoryOptimizedReadIQSingleRecordComplexWaveform(PrecisionTimeSpan, ComplexWaveformComplexDouble, RfsaWaveformInfo) methods,
as the fetch is performed as part of these methods.
Memory optimization is not guaranteed.