<< Click to Display Table of Contents > 

Scanner Card Interface > Description > Stream Information

Stream Information
Previous pageReturn to chapter overviewNext page

Description:

This section describes the stream information structure ScapsSamOpticModule2D.sc_com_control_stream_info. A "stream" describes and groups the (marking)  data sent to the scanner card. Data can be added to a stream by using the optic module function ScStreamInfo(). Using this structure, information can be added directly to such a stream. Most SCI functions internally insert data into the current stream, so clients usually only need to call ScStreamInfo to define the start and end of a stream. This is not strictly necessary if no grouping is desired/required (for example for external triggering), but is considered good practice.

The start and end of a marking sequence is defined by using constants scComControlStreamInfoIdentIdStart (start of a sequence) and scComControlStreamInfoIdentIdEnd (end of a sequence). There are two grouping types, scComControlStreamInfoSequenceIdJob and scComControlStreamInfoSequenceIdMain, where one job contains one or more streams marked with scComControlStreamInfoSequenceIdMain.

Looping:

A stream can also be used to repeat a group of marking instructions a specified number of times. This is done by modifying the start ident with a loop flag when designating the stream start, and passing the desired number of repeats as a parameter (see below).

Structure:

The structure sc_com_control_stream_info contains the following members:

ident: identifies main purpose of that streaming info structure:

i_0: an optional value, set to 0 when not used

i_1: an optional value, set to -1 when not used

i_2: a sequence id that modifies the ident value

d_1: an optional value, set to 0 when not used

note

The DLL interface only provides access to i_1 and i_2. This is not a problem since the other two flags are currently unused.

Possible Flags:

The structure can be filled with following values:

ident = scComControlStreamInfoIdentIdStart
 

i_0

i_1

i_2

d_1

Description

0

-1

scComControlStreamInfoSequenceIdMain

0

Marks the start of a stream

0

-1

scComControlStreamInfoSequenceIdJob

0

Marks the start of a streams job

Table 1: scComControlStreamInfoIdentIdStart

 
ident = scComControlStreamInfoIdentIdStart | scComControlStreamInfoIdentFlagLoop
 

i_0

i_1

i_2

d_1

Description

0

Number of loops

scComControlStreamInfoSequenceIdMain

0

Marks the start of a stream and sets the loop counter (valid only for non-continuous mode)

Table 2: scComControlStreamInfoIdentIdStart | scComControlStreamInfoIdentFlagLoop

ident = scComControlStreamInfoIdentIdEnd
 

i_0

i_1

i_2

d_1

Description

0

-1

scComControlStreamInfoSequenceIdMain

0

Marks the end of a stream

0

-1

scComControlStreamInfoSequenceIdJob

0

Marks the end of a streams job

Table 3: scComControlStreamInfoIdentIdEnd

note

StreamInfo