User manual
o with readMode = 0 and dataType = 3, the array size in bytes must be at least
max(40,8*nbrSamplesInSeg) for 8-bit digitizers and max(88,8*nbrSamplesInSeg) for 10-bit
and 12-bit digitizers.
o with readMode = 1 or readMode = 11 the waveform destination array dataArray must not
only allocate enough space to hold the requested data, but also some additional space. This
function achieves a higher transfer speed by simply transferring an image of the digitizer
memory to the CPU memory, and then reordering all circular segment buffers into linear
arrays. Since allocating a temporary buffer for the memory image is time consuming, the user-
allocated destination buffer is also used as a temporary storage for the memory image. The rule
for the minimum storage space to allocate with waveformArray is discussed in the
Programmer’s Guide section 3.10.2, Reading Sequences of Waveforms.
For averagers
o with readMode = 0,1 cannot be used. If the AcqrsD1_configMode mode is set to 0 (normal
data acquisition) please use the digitizer rules above
o with readMode = 2, 5 or 6 are allowed and the size must be at least nbrSamplesInSeg*
nbrSegments * size_of_dataType
For analyzers
o with readMode = 0,1 cannot be used. If the AcqrsD1_configMode mode is set to 0 (normal
data acquisition) please use the digitizer rules above
o readMode = 2 cannot be used
o with readMode = 3 the array size must be at least the sum of all gate lengths.
o with readMode = 4 in the APx01 analyzers the array size must be 4*sizeof(double) * number
of gates
o with readMode = 4 in the Peak
TDC
analyzers the array size must be 8 * number of peaks
o with readMode = 7 in the Peak
TDC
or SSR analyzers the array size must be
nbrSegments * (16 + nbrSamplesInSeg) for the simple case of all the data in a single gate. For
other cases please see the Programmer’s Guide section 3.10.6, Reading SSR Analyzer
Waveforms, for a detailed explanation.
o with readMode = 9 the array size must be at least
• 2**HistoRes*nbrSamplesInSeg* nbrSegments*Size_of_dataType if a segmented
histogram is used and
where
• HistoRes is the value used in the call to Acqrs_configAvgConfig with
"TdcHistogramRes"
• NbrSegments is either 1 or the number of segments if the value used in the call to
Acqrs_configAvgConfig with "TdcHistogramMode" is 1
• Size_dataType = 2*(1+HistoDepth), where HistoDepth is the value used in the call to
Acqrs_configAvgConfig with "TdcHistogramDepth"
o for all other cases, its size, in bytes, must be at least nbrSamplesInSeg*
nbrSegments*size_of_dataType
For configuring gate parameters see the User Manual: Family of Analyzers
The value of returnedSamplesPerSeg for readMode = 7 is not useable and therefore set to 0.
If used the segment descriptor array segDesc[] must always be allocated with a length that corresponds to
the total number of segments requested with nbrSegments in AqReadParameters. The first requested
segment is therefore deposited in SegDesc[0]. The segment descriptor array must also be allocated with the
correct structure type that depends on the readMode. If not used a Null pointer can be passed to the
function. There are no segment descriptors for readMode = 4, 7, 9, and 10.
The returned segment descriptor values timeStampLo and timeStampHi are respectively the low and high
parts of the 64-bit trigger timestamp, in units of picoseconds. The timestamp is the trigger time with respect
to an arbitrary time origin (usually the start-time of the acquisition except for the 10-bit digitizers), which is
intended for the computation of time differences between segments of a Sequence acquisition. Please refer
to the Programmer’s Guide section 3.15, Timestamps, for a detailed explanation.
The returned segment descriptor value horPos is the horizontal position, for the segment, of the first
(nominal) data point with respect to the origin of the nominal trigger delay in seconds. Since the first data
point is BEFORE the origin, this number will be in the range [-sampTime, 0]. Refer to the Programmer’s
Guide section 3.12, Trigger Delay and Horizontal Waveform Position, for a detailed discussion of the
value delayTime. For Averaged Waveforms, the value of horPos will always be 0.
Programmer’s Reference Manual Page 167 of 210