User manual
Programmer’s Guide    Page 52 of 66 
  The value of delayTime positions exactly the left edge of the display (or the exact nominal beginning of the 
waveform) with respect to the “stable” trigger time, which is the real reference point. We define the time 'trigger 
time + delayTime' as the time origin for the waveform, which is equivalent to saying that the trigger always 
occurs exactly at the time -delayTime. 
  The first data point of the waveform is defined as the last acquired data point before the time origin. It is indexed 
with i = 0 in the formula below.  
NOTE:  It is important to realize that if a single segment is read (e.g. with AcqrsD1_readData) the first data point 
will be dataArray[readPar.indexFirstPoint] and that this is not necessarily the first point given. 
  The exact position of the first data point with respect to the time origin is a negative number horPos. It is by 
definition in the range [-sampInterval, 0]. 
  The  time  between  the  trigger  and  the  first  data  point  hOffset  need  not  be  recorded  since  it  can  always  be 
computed as delayTime + horPos. Note: delayTime + horPos < delayTime by definition. 
  In order to  obtain a very stable image, even in a  highly zoomed display, the  user only needs  to position the 
acquired data points with the aid of horPos, by using the following formula for the x-position of point i with 
respect to the left edge of the display: 
x[i]  =  horPos + i * sampInterval 
3.15.  Sequence Acquisitions 
For  digitizers  in  Sequence  acquisition  mode,  multiple  waveforms are  acquired  autonomously,  with  a  single  start 
command AcqrsD1_acquire. Whenever a trigger is received, the current acquisition segment is normally terminated. 
The  digitizer  then  automatically  initializes  another  acquisition  into  the  next  memory  segment,  until  all  requested 
segments are filled. 
3.16.   Time stamps 
The U1071A and 10-bit-FAMILY of digitizers implement a time stamp to measure the time of the trigger for each 
acquisition segment. These time stamps can be used to calculate the time between any two triggers for any pair of 
triggers over multiple acquisitions.  
The  other,  “older”  Acqiris  digitizers  feature  a  'time  stamp'  in  order  to  measure  the  time  between  the  triggers  of 
consecutive  segments  in the  same acquisition.  In fact,  the  time  stamp  counter is  started  when the Sequence 
acquisition is started, and keeps counting during the entire sequence. The difference between the time stamps of any 
pair of (not necessarily adjacent) segments is the time between their respective triggers. 
The time stamp value is returned as a 64-bit integer, in units of picoseconds, with a resolution identical to that of the 
trigger  time  interpolator  (see  the  appropriate  product  User  manual).  The  waveform  readout  function 
AcqrsD1_readData returns  the time stamp value as 2 32-bit  values. In order to  do time differences,  you should 
transform them into a 64-bit integer: 
  In Visual C/C++, use the 64-integer __int64 as follows: 
__int64 timeStamp = timeStampHi; 
timeStamp = timeStamp<<32 + (unsigned long)timeStampLo; 
Arithmetic operations between such integers can be done as with shorter integers.  
You also can convert a time stamp difference to an extended floating point number, and do arithmetic operations 
as with other variables: 
double deltaTime = (double)(timeStamp – previousStamp); 
  In Visual Basic, use a decimal Variant variable as follows: 
Const Two16 As Variant = 65536 
Const Two32 As Variant = Two16 * Two16 
Dim timeStamp As Variant, previousStamp as Variant 
Dim timeDiff as Variant, xStampLo as Variant 
... 
If (tStampLo < 0) Then 
 xStampLo = Two32 – Abs(tStampLo) 
Else 










