VTI Instruments Corp.
140
EX10xxA/RX1032/EX1044 Function Calls
vtex10xxA_enable_streaming_dataEx
F
UNCTION
P
ROTOTYPE
ViStatus _VI_FUNC vtex10xxA_enable_streaming_dataEx (ViSession
vi
, void *
private_data
,
EX10XXA_STREAM_CALLBACK
callback
, ViBoolean
legacy_mode
);
F
UNCTION
P
ARAMETERS
vi
= contains a session handle to the instrument. This handle is obtained by the function and remains valid until the
session is closed.
private_data
= a pointer to client data that is passed to the callback function.
callback
= a call back function to be called when new data is received.
legacy_mode
= a Boolean value indicating the time stamp resolution. If set to “1”, microsecond (ms) resolution is
used. If set to “0”, nanosecond (ns) resolution is used.
D
ATA
I
TEM
R
ESET
V
ALUE
Not applicable to this function.
D
ESCRIPTION
This function enables data streaming. Data is returned to the callback function that the user specified. In order to
implement this function, the macro INSTR_LANGUAGE_SPECIFIC must be defined.
NOTE
If running the EX10xxA with existing EX1048 code, it is important to note that the time stamp for
the EX10xxA has nanosecond (ns) resolution, whereas the EX1048 has microsecond (µs) resolution.
If using the EX1048 Rev 2
plug&play
driver with the EX1048A, the time stamp will be returned in
microseconds.
The
callback
function syntax is as follows:
ViInt32(*EX10XXA_STREAM_CALLBACK)(void *priv, EX10xxA_SampleData *data );
The
callback
data structure is as follows:
struct EX10xxA_SampleData {
ViUInt32 ss_secs;
/* data sample time stamp */
ViUInt32 ss_nsecs;
/* fractional part of time stamp in nanoseconds (microseconds in legacy mode) */
struct {
ViUInt32 x_len;
/* array size of data samples */
ViReal32 *x_val;
/* an array of data samples */
} x;
struct {
ViUInt32 x_counts_len;
/* array size of ADC counts */
ViInt32 *x_counts_val;
/* an array of 20-bit ADC Readings */
} x_counts;
struct {
ViUInt32 x_ticks_len;
/* array size of x ticks */
ViUInt16 *x_ticks_val;
/* 16-bit measurement timestamps - 100 ns offsets from scan start time */
} x_ticks;
struct {
ViUInt32 cjc_len;
/* array size of cjc data*/
ViReal32 *cjc_val;
/* an array of 32-bit floating point CJC values */
} cjc;
struct {
ViUInt32 cjc_counts_len;
/* array size of cjc count */
ViUInt32 *cjc_counts_val;
/* an array of 20-bit ADC Readings */
} cjc_counts;
struct {
ViUInt32 cjc_ticks_len;
/* array size of cjc ticks */
ViUInt16 *cjc_ticks_val;
/* 16-bit CJC timestamps - 100 ns offsets from scan start time */
} cjc_ticks;
struct {
Summary of Contents for EX1000A
Page 28: ...VTI Instruments Corp 28 EX10xxA Introduction EX1044 DIAGRAM ...
Page 29: ...www vtiinstruments com EX10xxA Introduction 29 FIGURE 1 5 EX1044 TABLE TOP USAGE ...
Page 34: ......
Page 56: ......
Page 74: ......
Page 130: ......
Page 282: ......