GenICam SFNC 2 0 0 PDF
GenICam SFNC 2 0 0 PDF
GenICam SFNC 2 0 0 PDF
GenICam
Standard Features
Naming Convention
Version 2.0
Table of Content
TABLE OF CONTENT .............................................................................................................. 2
HISTORY................................................................................................................................... 16
1 INTRODUCTION .............................................................................................................. 26
2 FEATURES SUMMARY................................................................................................... 35
4.1 IMAGEFORMATCONTROL............................................................................................. 89
4.2 SENSORWIDTH ............................................................................................................ 89
4.3 SENSORHEIGHT ...........................................................................................................90
4.4 SENSORTAPS................................................................................................................ 90
4.5 SENSORDIGITIZATIONTAPS .........................................................................................91
4.6 WIDTHMAX ................................................................................................................. 91
4.7 HEIGHTMAX ................................................................................................................ 92
4.8 REGIONSELECTOR .......................................................................................................92
4.9 REGIONMODE .............................................................................................................. 93
4.10 REGIONDESTINATION .................................................................................................. 93
4.11 WIDTH ......................................................................................................................... 94
4.12 HEIGHT ........................................................................................................................ 94
4.13 OFFSETX .....................................................................................................................95
4.14 OFFSETY .....................................................................................................................95
4.15 LINEPITCH ................................................................................................................... 95
4.16 BINNINGSELECTOR ...................................................................................................... 96
4.17 BINNINGHORIZONTAL .................................................................................................96
4.18 BINNINGVERTICAL ...................................................................................................... 97
4.19 DECIMATIONHORIZONTAL ...........................................................................................97
4.20 DECIMATIONVERTICAL ...............................................................................................97
4.21 REVERSEX ................................................................................................................... 98
4.22 REVERSEY ................................................................................................................... 98
4.23 PIXELFORMAT ............................................................................................................. 99
4.24 PIXELCODING (DEPRECATED) ................................................................................... 105
4.25 PIXELSIZE .................................................................................................................. 106
4.26 PIXELCOLORFILTER .................................................................................................. 107
4.27 PIXELDYNAMICRANGEMIN .......................................................................................107
4.28 PIXELDYNAMICRANGEMAX ...................................................................................... 108
4.29 TESTPATTERNGENERATORSELECTOR ....................................................................... 108
4.30 TESTPATTERN............................................................................................................ 109
4.31 TESTIMAGESELECTOR (DEPRECATED)....................................................................... 110
2012-10-25 Page 4 of 366
Version 2.0 Standard Features Naming Convention
18.1 SOURCES CONTROL MODEL WITH MULTI-REGIONS AND TRANSFER .......................... 303
18.2 SOURCE CONTROL FEATURES .................................................................................... 307
18.3 SOURCECONTROL ...................................................................................................... 308
18.4 SOURCECOUNT .......................................................................................................... 309
18.5 SOURCESELECTOR .....................................................................................................309
Table of Figures
FIGURE 1-1 DEVICE COMMUNICATION MODEL ..................................................................................................................... 32
FIGURE 1-2: BASIC ACQUISITION DEVICE WITH FIXED CONFIGURATION. ............................................................................... 33
FIGURE 1-3: MULTI-SOURCE, MULTI-REGION ACQUISITION DEVICE WITH DATA STREAM TRANSFER CONTROL. .................... 34
FIGURE 4-1: IMAGE SIZE AND DEFINING A REGION OF INTEREST ........................................................................................... 88
FIGURE 5-1: ACQUISITION SIGNALS DEFINITION .................................................................................................................. 115
FIGURE 5-2: BURST SIGNALS DEFINITION ............................................................................................................................ 116
FIGURE 5-3: FRAME SIGNALS DEFINITION............................................................................................................................ 117
FIGURE 5-4: FRAME SIGNALS DEFINITIONS IN LINE SCAN MODE ......................................................................................... 118
FIGURE 5-5: CONTINUOUS ACQUISITION ............................................................................................................................. 120
FIGURE 5-6: CONTINUOUS ACQUISITION WITH ACQUISITIONSTART TRIGGER ..................................................................... 120
FIGURE 5-7: CONTINUOUS ACQUISITION WITH FRAMESTART TRIGGER ............................................................................... 122
FIGURE 5-8: CONTINUOUS ACQUISITION WITH FRAMEBURSTSTART TRIGGER .................................................................... 123
FIGURE 5-9: MULTIFRAME ACQUISITION ............................................................................................................................ 124
FIGURE 5-10: MULTI FRAME ACQUISITION WITH ACQUISITIONSTART TRIGGER ................................................................. 125
FIGURE 5-11: MULTI FRAME ACQUISITION WITH FRAMESTART TRIGGER ........................................................................... 126
FIGURE 5-12: MULTI FRAME ACQUISITION WITH FRAMEBURSTSTART TRIGGER ................................................................ 127
FIGURE 5-13: SINGLE FRAME ACQUISITION ........................................................................................................................ 128
FIGURE 5-14: SINGLE FRAME ACQUISITION WITH ACQUISITIONSTART TRIGGER ................................................................ 129
FIGURE 5-15: SINGLE FRAME ACQUISITION WITH FRAMESTART TRIGGER .......................................................................... 130
FIGURE 5-16: TRIGGER GENERATION FUNCTIONAL MODEL. ................................................................................................ 139
FIGURE 6-1: I/O CONTROL .................................................................................................................................................. 150
FIGURE 9-1: GAIN ALL PRE AMPLIFICATION ........................................................................................................................ 191
FIGURE 9-2: GAIN ALL POST AMPLIFICATION ...................................................................................................................... 192
FIGURE 14-1: FRAME WITH CHUNKS DISABLED ................................................................................................................... 261
FIGURE 14-2: FRAME WITH CHUNKS ENABLED .................................................................................................................. 261
FIGURE 15-1: FILE ACCESS MODEL..................................................................................................................................... 284
FIGURE 15-2: LAYOUT OF FILE ACCESS BUFFER. ................................................................................................................ 286
FIGURE 18-1: MULTI-SOURCE MULTI-REGION DEVICE WITH DATA STREAM TRANSFER CONTROL...................................... 305
FIGURE 19-1: ACQUISITION AND TRANSFER DATA FLOW. ................................................................................................... 312
FIGURE 19-2: TRANSFER CONTROL SECTION. ...................................................................................................................... 313
FIGURE 19-3: TRANSFER CONTROL STATE. .......................................................................................................................... 314
FIGURE 23-1 GEOMETRY 1X-1Y (AREA-SCAN) ................................................................................................................... 347
FIGURE 23-2 GEOMETRY 1X (LINE-SCAN) ........................................................................................................................... 347
FIGURE 23-3 GEOMETRY 1X2-1Y (AREA-SCAN) ................................................................................................................. 348
FIGURE 23-4 GEOMETRY 1X2 (LINE-SCAN) ......................................................................................................................... 348
FIGURE 23-5 GEOMETRY 2X-1Y (AREA-SCAN) ................................................................................................................... 349
FIGURE 23-6 GEOMETRY 2X (LINE-SCAN) ........................................................................................................................... 349
FIGURE 23-7 GEOMETRY 2XE-1Y (AREA-SCAN) ................................................................................................................. 350
FIGURE 23-8 GEOMETRY 2XE (LINE-SCAN) ........................................................................................................................ 350
FIGURE 23-9 GEOMETRY 2XM-1Y (AREA-SCAN) ................................................................................................................ 351
FIGURE 23-10 GEOMETRY 2XM (LINE-SCAN) ..................................................................................................................... 351
FIGURE 23-11 GEOMETRY 1X-1Y2 (AREA-SCAN) ............................................................................................................... 352
FIGURE 23-12 GEOMETRY 1X-2YE (AREA-SCAN) ............................................................................................................... 352
FIGURE 23-13 GEOMETRY 1X3-1Y (AREA-SCAN) ............................................................................................................... 353
FIGURE 23-14 GEOMETRY 1X3 (LINE-SCAN) ....................................................................................................................... 353
FIGURE 23-15 GEOMETRY 1X3-1Y (AREA-SCAN) ............................................................................................................... 354
FIGURE 23-16 GEOMETRY 1X3 (LINE-SCAN) ....................................................................................................................... 354
FIGURE 23-17 GEOMETRY 1X4-1Y (AREA-SCAN) ............................................................................................................... 355
FIGURE 23-18 GEOMETRY 1X4 (LINE-SCAN) ....................................................................................................................... 355
FIGURE 23-19 GEOMETRY 4X-1Y (AREA-SCAN) ................................................................................................................. 356
FIGURE 23-20 GEOMETRY 4X (LINE-SCAN) ......................................................................................................................... 356
FIGURE 23-21 GEOMETRY 2X2-1Y (AREA-SCAN) ............................................................................................................... 357
FIGURE 23-22 GEOMETRY 2X2 (LINE-SCAN) ....................................................................................................................... 357
2012-10-25 Page 14 of 366
Version 2.0 Standard Features Naming Convention
History
Version Date Changed by Change
0.01 14.02.2006 Eric Carey, DALSA Initial version based on the GenICam
Coreco standard feature list document of the GigE
Vision/GenICam joint sub-committee. This
version is intended to be the official feature
naming convention to be used for GigE
Vision cameras.
Original contributors:
Basler (Fritz Dierks, Thies Moeller,
Andreas Gäer),
Leutron Vision (Jan Becvar),
DALSA Coreco (Eric Carey),
Euresys (Jean-Michel Wintgens),
MVTec (Christoph Zierl),
National Instruments (Chris Graf),
Stemmer (Sascha Dorenbeck),
SICKIVP (Mattias Johannesson),
JAI (Ole Krogh Jørgensen),
Matrox (Stephane Maurice)
0.02 16.03.2006 Stephane Maurice, Matrox Define the new Acquisition, Trigger and
I/O feature set.
Introduced the notion of counters and
grouped it with Timers in a separate
chapter.
Reviewed feature names for consistency
and grouping.
draft 04.04.2006 Stephane Maurice, Matrox Included modifications and corrections
1.00 based on the feedbacks from version 0.02 to
0.9.
Final Draft.
Draft 05.01.2009 Vincent Rowley, Pleora Added GigE Vision 1.2 support.
1.4a-c and Technologies Inc. Added missing Bpp36 and Bpp48
22.01.2010 enumeration entries for PixelSize feature.
Added missing RawPacked enumeration
entry for PixelCoding feature.
Updated support level for
GevSCPInterfaceIndex feature in order to
be consistent with related features.
Clarified text when necessary and fixed
typos.
Corrected some feature descriptions.
1 Introduction
The GenICam technology allows exposing arbitrary features of a camera through a unified API
and GUI. Each feature can be defined in an abstract manner by its name, interface type, unit of
measurement and behavior. The GenApi module of the GenICam standard defines how to write a
camera description file that describes the features of a device
The usage of GenApi alone could be sufficient to make all the features of a camera or a device
accessible through the GenICam API. However if the user wants to write generic and portable
software for a whole class of cameras or devices and be interoperable, then GenApi alone is not
sufficient and the software and the device vendors have to agree on a common naming
convention for the standard features. This is the role of the GenICam "Standard Features Naming
Convention (SFNC)" to provide this common set of features, their name, and to define a standard
behavior for them.
The Standard Features Naming Convention of GenICam is targeting maximum usability by
existing and future transport layer technologies. It provides the definitions of a standard
behavioral model and of standard features. The goal is to cover and to standardize the naming
convention used in all the basic use cases where the implementation by different vendors would
be very similar anyway.
Note that to be GenICam compliant a product:
- Must provide or accept a GenICam XML file compatible with the latest GenApi and schema.
- The GenICam XML file must include all the public features of the product it describes.
- The GenICam XML must follow the Standard Features Naming Convention whenever
applicable or possible for its features.
Those requirements ensure that the users can rely on a complete, consistent and portable feature
set for its device and that those features are always accessible in a standard way.
1.1 Conventions
Feature Category
With the GenICam standard, each feature should be included in a "Category". The Category
element defines in which group of features, the feature will be located.
The Category does not affect the functionality of the features but is used by the GUIs to group
the features when displaying them. The purpose is mainly to insure that the GUI can present
features in a more organized way.
This document lists for each feature, a recommended Category that should be used.
Feature Level
In this document, features are tagged according to the following requirement levels:
M: Mandatory - Must be implemented to achieve compliance with the GenICam
standard.
R: Recommended - This feature adds important aspects to the use case and must respect
the naming convention if used.
O: Optional - This feature is less critical. Nevertheless, it is considered and must respect
the naming convention if used.
For additional details about the mandatory features specific to a particular transport layers,
please refer to the text of those standards.
Feature Visibility
According to the GenICam standard each feature can be assigned a "Visibility". The Visibility
defines the type of user that should get access to the feature. Possible values are: Beginner,
Expert, Guru and Invisible. The latter is required to make features accessible from the API, but
invisible in the GUI.
The visibility does not affect the functionality of the features but is used by the GUI to decide
which features to display based on the current user level. The purpose is mainly to insure that the
GUI is not cluttered with information that is not intended at the current user level.
The following criteria have been used for the assignment of the recommended visibility:
B: Beginner - Features that should be visible for all users via the GUI and API. This is
the default visibility in the GenICam XMLfiles and will be used if the Visibility element
is omitted for a feature. The number of features with "Beginner" visibility should be
limited to all basic features of the devices so the GUI display is well-organized and is
easy to use.
E: Expert - Features that require a more in-depth knowledge of the camera functionality.
This is the preferred visibility level for all advanced features in the cameras.
G: Guru – Advanced features that might bring the cameras into a state where it will not
work properly anymore if it is set incorrectly for the cameras current mode of operation.
I: Invisible – Features that should be kept hidden for the GUI users but still be available
via the API.
This document lists for each feature, a recommended Visibility that should be used.
Selector
A selector is used to index which instance of the feature is accessed in situations where multiple
instances of a feature exist (For instance, the analog gain for each separate channel of the
red/green/blue component of a color camera).
A selector is a separate feature that is typically an IEnumeration or an IInteger. Selectors must be
used only to select the target features for subsequent changes. It is not allowed to change the
behavior of a device in response to a change of a selector value.
If a selector has only one possible value, the selector relation can be omitted but it is recommended to
leave the selector feature as read only for information purpose (Ex: TriggerSelector = FrameStart
(read only) for a device that has only this trigger type supported).
In this document, the features potentially dependent on a selector are expressed using the C
language convention for arrays: a pair of brackets follows the feature name, like in
SelectedFeature[Selector]. When the Selector is not present, one must deduce the feature is not
an array.
In general, a selector should apply only to a single category of feature (Ex: TriggerSelector applies
only to the Trigger related features). However, it is possible that certain more advanced devices will
require a selector that applies to features in different categories. For example a device with 2
independent input sensors could have a SourceSelector feature that would select features in the Image
Format Control, Acquisition Control, Analog Control, LUT Control and Color Transformation
Control categories in order to globally control all the features associated with a particular source (Ex":
SourceSelector = Source1, PixelFormat[SourceSelector] = Mono8, Gain[SourceSelector] = 10,
AcquisitionStart[SourceSelector]).
Note also that when a feature that has a selector is persisted to a file, the selector is iterated to allow
saving the complete array of values and not only the currently selected element.
The following abbreviations are used as standard units for features described in this document.
Note that all units are using plain ASCII characters.
ns nanoseconds
us microseconds
ms milliseconds
s seconds
B Bytes
Bps Bytes per second
MBps Mega Bytes per second
Mbps Mega bits per second
Fps Frames per second
dB decibels
C Celsius
Hz Hertz
1.3 Acronyms
This section defines the terms used in this document. An illustration of their inter-relation is provided
in the Device Communication Model section below (see Figure 1-1).
Entity An Entity is an end point located at either side (Host or Device) of a Communication.
Host System The Host System is the Entity which takes control over a Device. A Host System can
be the sink or the source for the data being streamed.
Under GenICam the Host System must read and use the GenICam compliant XML
file of the Device to control it.
Device The Device is an Entity which is controlled by a Host System. A Device can be the
source or the sink for streaming data. It can be remote (outside the Host System) or
local (in the Host System).
Under GenICam the Device must provide a GenICam compliant XML file and a
register-based control access.
Link A Link is the virtual binding between a Host System and a Device to establish a
Communication. A Link is logical and may use one or more physical Connections.
Connection A Connection is the physical binding between a Host System and a Device.
Interface A virtual end point of the Link between a Device and a Host System.
Adapter A physical entity located in the Host System that has one or many Interfaces.
Communication A Communication is an exchange of information between two Entities using a Link.
Channel A logical point-to-point Communication over a Link. There may be multiple
Channels on a single Link.
Transport Layer The layer of Communication responsible to transport information between Entities.
Transmitter An Entity which acts as the source for streaming data. This may apply to a Host
System or a Device.
Receiver An Entity which acts as the sink for streaming data. This may apply to a Host System
or a Device.
Transceiver An Entity which can receive and transmit streaming data. This may apply to a Host
System or a Device.
Peripheral An Entity which neither acts as a source nor as a sink for streaming data but can be
controlled.
Stream A flow of data that comes from a source and goes to a sink. A data Stream can be
composed of images or chunk of data.
Stream Channel A Communication Channel used to transmit a data Stream from a Transmitter (or
Transceiver) to a Receiver (or Transceiver).
Message Channel A Communication Channel used by the Device to notify the Host System
asynchronously of Events. The Host System could also use a Message Channel to
communicate events to the Device.
Control Channel A Communication Channel used to configure and control a Device. For a Control
Channel the Device acts as a server that provides the initial point of Communication
for the Host System that acts as a Client. The Communication on a Control Channel
The remote Device and the Host System communicate using a virtual Link.
The virtual Link is established on an Interface using one or more physical Connections.
The Host System controls the remote Device using the features present in its GenICam XML file.
The remote Transmitter Device has a data Source that generates a data Stream.
The data Stream is sent to the Host System on a Stream Channel of the virtual Link.
The reception of the data Stream on a Host Interface is handled by a local receiver Device.
The local receiver Device writes the data Stream to the Host System memory.
See section 1.4 Standard Definitions section above for more detailed information.
This section presents the general data acquisition model for the devices controlled using the SFNC. It
presents the main elements involved in the data acquisition by a Device and the typical data flow for
transfer of images to the Host System. It covers the typical devices with a single data source and the
more complex devices with multi-source, multi-region of interest and data transfer control.
Basic acquisition Devices with one source of data, one region of interest and automatic control of the
transfer of data such as the one shown in Figure 1-2, are simple particular case of this model where the
Source, Region and Transfer features are fixed and cannot be changed (so the corresponding fixed
features can be omitted).
Device
The typical features setting for such a basic device where the values of Source, Region and Transfer
Control Stream are fixed is typically reduced to:
Width = 320
Height = 240
AcquisitionStart
…
AcquisitionStop
But in general, for more complex devices, the acquisition and data transfer model is:
A Device has one or many Source(s).
A Source has one or many Region(s) of interest.
A Region of interest goes to a data Stream.
The data generation by the Source is controlled by the "Acquisition Control" features.
The dimensions of a Region of interest are controlled by the "Image Format Control" features.
The outgoing data flow of a Stream is controlled by a "Transfer Control" features.
The Transfer Control module output the data Stream to a Stream Channel.
The Stream Channel is transmitted on a virtual Link.
The virtual Link is established with a Host System using one or many Device`s physical Connection(s).
Figure 1-3 below presents an example of a more complex device supporting multi-source, multi-region
with data stream transfer control.
Source1 Region1
Source2
Device
Figure 1-3: Multi-source, multi-region acquisition device with data stream transfer control.
The typical feature setting model for such a complex multi-source device is presented in detail the
chapter 18 (Source Control). The features for the control of the regions of interest and image format
handling are documented in chapter 4 (Image Format Control) and Chapter 19 (Transfer Control)
presents the features to control the flow of data on the external link.
2 Features Summary
This chapter provides a comprehensive summary of the standard features covered by this document. The following chapters provide more
detailed explanation of each feature.
In case of discrepancy, the sections describing the features in detail prevail.
DeviceSFNCVersionMinor R IInteger R - Minor version of the Standard Features Naming Convention that was
used to create the device`s GenICam XML.
DeviceSFNCVersionSubMinor R IInteger R - Sub minor version of Standard Features Naming Convention that was
used to create the device`s GenICam XML.
DeviceManifestEntrySelector O IInteger R/W - Selects the manifest entry to reference.
DeviceManifestXMLMajorVersion[Dev O IInteger R - Indicates the major version number of the GenICam XML file of the
iceManifestEntrySelector] selected manifest entry.
DeviceManifestXMLMinorVersion[Dev O IInteger R - Indicates the minor version number of the GenICam XML file of the
iceManifestEntrySelector] selected manifest entry.
DeviceManifestXMLSubMinorVersion[ O IInteger R - Indicates the subminor version number of the GenICam XML file of the
DeviceManifestEntrySelector] selected manifest entry.
DeviceManifestSchemaMajorVersion[D O IInteger R - Indicates the major version number of the schema file of the selected
eviceManifestEntrySelector] manifest entry.
DeviceManifestSchemaMinorVersion[D O IInteger R - Indicates the minor version number of the schema file of the selected
eviceManifestEntrySelector] manifest entry.
DeviceManifestPrimaryURL[DeviceMa O IString R - Indicates the first URL to the GenICam XML device description file of
nifestEntrySelector] the selected manifest entry.
DeviceManifestSecondaryURL[Device O IString R - Indicates the second URL to the GenICam XML device description file
ManifestEntrySelector] of the selected manifest entry.
DeviceTLType R IEnumeration R - Transport Layer type of the device.
DeviceTLVersionMajor R IInteger R - Major version of the Transport Layer of the device.
DeviceTLVersionMinor R IInteger R - Minor version of the Transport Layer of the device.
DeviceTLVersionSubMinor R IInteger R - Sub minor version of the Transport Layer of the device.
DeviceGenCpVersionMajor R IInteger R - Major version of the GenCP protocol supported by the device.
DeviceGenCPVersionMinor R IInteger R - Minor version of the GenCP protocol supported by the device.
DeviceMaxThroughput O IInteger R Bps Maximum bandwidth of the data that can be streamed out of the device.
DeviceConnectionSelector R IInteger R/(W) - Selects which Connection of the device to control.
DeviceConnectionSpeed[DeviceConnect O IInteger R Bps Indicates the speed of transmission of the specified Connection.
ionSelector]
DeviceConnectionStatus[DeviceConnect O IEnumeration R - Indicates the status of the specified Connection.
ionSelector]
DeviceLinkSelector R IInteger R/(W) - Selects which Link of the device to control.
DeviceLinkSpeed[DeviceLinkSelector] O IInteger R Bps Indicates the speed of transmission negotiated on the specified Link.
DeviceLinkThroughputLimitMode[Devi R IEnumeration R/W - Controls if the DeviceLinkThroughputLimit is active.
ceLinkSelector]
DeviceLinkThroughputLimit[DeviceLin R IInteger R/(W) Bps Limits the maximum bandwidth of the data that will be streamed out by
kSelector] the device on the selected Link.
DeviceLinkConnectionCount[DeviceLin O IInteger R - Returns the number of physical connection of the device used by a
kSelector] particular Link.
DeviceLinkHeartbeatMode[DeviceLink O IEnumeration R/W - Activate or deactivate the Link`s heartbeat.
Selector]
DeviceLinkHeartbeatTimeout[DeviceLi O IFloat R/W us Controls the current heartbeat timeout of the specific Link.
nkSelector]
DeviceCommandTimeout O IFloat R us Indicates the current command timeout of the specific Link.
[DeviceLinkSelector]
DeviceStreamChannelCount O IInteger R - Indicates the number of streaming channels supported by the device.
DeviceStreamChannelSelector O IInteger R/W - Selects the stream channel to control.
DeviceStreamChannelDirection[Device O IEnumeration R - Reports the direction of the stream channel.
StreamChannelSelector]
DeviceStreamChannelLink[DeviceStrea O IInteger R/(W) - Index of device`s Link to use for streaming the specifed stream channel.
mChannelSelector]
DeviceStreamChannelEndianness O IBoolean R/(W) - Endianess of multi-byte pixel data for this stream.
[DeviceStreamChannelSelector]
DeviceStreamChannelPacketSize R IInteger R/(W) B Specifies the stream packet size, in bytes, to send on the selected
[DeviceStreamChannelSelector] channel for a Transmitter or specifies the maximum packet size
supported by a receiver.
DeviceMessageChannelCount O IInteger R - Indicates the number of message channels supported by the specified
Link of the device.
DeviceCharacterSet O IEnumeration R - Character set used by the strings of the device`s bootstrap registers.
DeviceReset R ICommand W - Resets the device to its power up state.
DeviceIndicatorMode O IEnumeration R/W - Controls the behavior of the indicators (such as LEDs) showing the
status of the Device.
DeviceFeaturePersistenceStart O ICommand (R)/W - Indicate to the device and GenICam XML to get ready for persisting of
all streamable features.
DeviceFeaturePersistenceEnd O ICommand (R)/W - Indicate to the device the end of feature persistence.
DeviceRegistersStreamingStart R ICommand (R)/W - Prepare the device for registers streaming without checking for
consistency.
DeviceRegistersStreamingEnd R ICommand (R)/W - Announce the end of registers streaming.
DeviceRegistersCheck R ICommand (R)/W - Perform the validation of the current register set for consistency.
DeviceRegistersValid R IBoolean R - Returns if the current register set is valid and consistent.
DeviceTemperatureSelector O IEnumeration R/W - Selects the location within the device, where the temperature will be
measured.
DeviceTemperature[DeviceTemperature O IFloat R C Device temperature in degrees Celsius (C).
Selector]
DeviceClockSelector O IEnumeration R/(W) - Selects the clock frequency to access from the device.
DeviceClockFrequency[DeviceClockSel O IFloat R/(W) Hz Returns the frequency of the selected Clock.
ector]
DeviceSerialPortSelector R IEnumeration R/(W) - Selects which serial port of the device to control.
DeviceSerialPortBaudRate[DeviceSerial R IEnumeration R/(W) - This feature controls the baud rate used by the selected serial port.
PortSelector]
Timestamp R IInteger R ns Reports the current value of the device timestamp counter.
TimestampReset O ICommand (R)/W - Resets the current value of the device timestamp counter.
feature.
source.
TriggerActivation[TriggerSelector] R IEnumeration R/W - Specifies the activation mode of the trigger.
TriggerOverlap[TriggerSelector] R IEnumeration R/W - Specifies the type trigger overlap permitted with the previous frame.
TriggerDelay[TriggerSelector] R IFloat R/W us Specifies the delay in microseconds (us) to apply after the trigger
reception before activating it.
TriggerDivider[TriggerSelector] R IInteger R/W - Specifies a division factor for the incoming trigger pulses.
TriggerMultiplier[TriggerSelector] R IInteger R/W - Specifies a multiplication factor for the incoming trigger pulses.
ExposureMode R IEnumeration R/W - Sets the operation mode of the Exposure (or shutter).
ExposureTime R IFloat R/W us Sets the Exposure time when ExposureMode is Timed and
ExposureAuto is Off.
ExposureAuto O IEnumeration R/W - Sets the automatic exposure mode when ExposureMode is Timed.
in a single bitfield.
LineSource[LineSelector] R IEnumeration R/W - Selects which internal acquisition or I/O source signal to output on the
selected Line.
LineFormat[LineSelector] O IEnumeration R/W - Controls the current electrical format of the selected physical input or
output Line.
UserOutputSelector R IEnumeration R/W - Selects which bit of the User Output register will be set by
UserOutputValue.
UserOutputValue[UserOutputSelector] R IBoolean R/W - Sets the value of the bit selected by UserOutputSelector.
UserOutputValueAll O IInteger R/W - Sets the value of all the bits of the User Output register.
UserOutputValueAllMask O IInteger R/W - Sets the write mask to apply to the value specified by
UserOutputValueAll before writing it in the User Output register.
CounterReset[CounterSelector] R ICommand (R)/W - Does a software reset of the selected Counter and starts it.
CounterValue[CounterSelector] R IInteger R/W - Reads or writes the current value of the selected Counter.
CounterValueAtReset[CounterSelector] R IInteger R - Reads the value of the selected Counter when it was reset by a trigger
or by an explicit CounterReset command.
CounterDuration[CounterSelector] R IInteger R/W - Sets the duration (or number of events) before the CounterEnd event is
generated.
CounterStatus[CounterSelector] R IEnumeration R - Returns the current state of the Counter.
CounterTriggerSource[CounterSelector] R IEnumeration R/W - Selects the source to start the Counter.
CounterTriggerActivation[CounterSelec R IEnumeration R/W - Selects the activation mode of the trigger to start the Counter.
tor]
TimerSelector R IEnumeration R/W - Selects which Timer to configure.
TimerDuration[TimerSelector] R IFloat R/W us Sets the duration (in microseconds) of the Timer pulse.
TimerDelay[TimerSelector] R IFloat R/W us Sets the duration (in microseconds) of the delay to apply at the
reception of a trigger before starting the Timer.
TimerReset[TimerSelector] R ICommand (R)/W - Does a software reset of the selected timer and starts it.
TimerValue[TimerSelector] R IFloat R/W us Reads or writes the current value (in microseconds) of the selected
Timer.
TimerStatus[TimerSelector] R IEnumeration R - Returns the current state of the Timer.
TimerTriggerSource[TimerSelector] R IEnumeration R/W - Selects the source of the trigger to start the Timer.
TimerTriggerActivation[TimerSelector] R IEnumeration R/W - Selects the activation mode of the trigger to start the Timer.
ctor]
GevCurrentSubnetMask[GevInterfaceSe O IInteger R - Reports the subnet mask of the given logical link.
lector]
GevCurrentDefaultGateway[GevInterfac O IInteger R - Reports the default gateway IP address to be used on the given logical
eSelector] link.
GevIPConfigurationStatus[GevInterface O IEnumeration R - Reports the current IP configuration status.
Selector]
GevFirstURL O IString R - Indicates the first URL to the GenICam XML device description file.
GevSecondURL O IString R - Indicates the second URL to the GenICam XML device description file.
GevNumberOfInterfaces O IInteger R - Indicates the number of logical links supported by this device.
GevPersistentIPAddress[GevInterfaceSe O IInteger R/W - Controls the Persistent IP address for this logical link.
lector]
GevPersistentSubnetMask[GevInterface O IInteger R/W - Controls the Persistent subnet mask associated with the Persistent IP
Selector] address on this logical link.
GevPersistentDefaultGateway[GevInterf O IInteger R/W - Controls the persistent default gateway for this logical link.
aceSelector]
GevMessageChannelCount O IInteger R - Indicates the number of message channels supported by this device.
GevStreamChannelCount O IInteger R - Indicates the number of stream channels supported by this device.
GevHeartbeatTimeout O IInteger R/W ms Controls the current heartbeat timeout in milliseconds.
GevTimestampTickFrequency O IInteger R Hz Indicates the number of timestamp ticks in 1 second (frequency in Hz).
GevTimestampControlLatch O ICommand W - Latches the current timestamp counter into GevTimestampValue.
GevTimestampControlReset O ICommand W - Resets the timestamp counter to 0.
GevTimestampValue O IInteger R Returns the latched 64-bit value of the timestamp counter.
GevDiscoveryAckDelay O IInteger R/(W) ms Indicates the maximum randomized delay the device will wait to
acknowledge a discovery command.
GevIEEE1588 O IBoolean R/W - Enables the IEEE 1588 Precision Time Protocol to control the
timestamp register.
GevIEEE1588ClockAccuracy O IEnumeration R/(W) - Indicates the expected accuracy of the device clock when it is the
grandmaster, or in the event it becomes the grandmaster.
GevIEEE1588Status O IEnumeration R - Provides the state of the IEEE 1588 clock.
GevGVCPExtendedStatusCodesSelector O IEnumeration R/W - Selects the GigE Vision version to control extended status codes for.
GevGVCPExtendedStatusCodes[GevG O IBoolean R/W - Enables the generation of extended status codes.
VCPExtendedStatusCodesSelector]
GevGVCPPendingAck O IBoolean R/W - Enables the generation of PENDING_ACK.
GevGVCPHeartbeatDisable O IBoolean R/W - Disables the GVCP heartbeat.
GevGVCPPendingTimeout O IInteger R - Indicates the longest GVCP command execution time before a device
returns a PENDING_ACK.
GevPrimaryApplicationSwitchoverKey O IInteger W-O - Controls the key to use to authenticate primary application switchover
requests.
GevGVSPExtendedIDMode O IEnumeration R/(W) - Enables the extended IDs mode.
GevCCP O IEnumeration R/W - Controls the device access privilege of an application.
GevPrimaryApplicationSocket O IInteger R - Returns the UDP source port of the primary application.
GevPrimaryApplicationIPAddress O IInteger R - Returns the address of the primary application.
GevMCPHostPort O IInteger R/W - Controls the port to which the device must send messages.
GevMCDA O IInteger R/W - Controls the destination IP address for the message channel.
GevMCTT O IInteger R/W ms Provides the transmission timeout value in milliseconds.
GevMCRC O IInteger R/W - Controls the number of retransmissions allowed when a message
channel message times out.
GevMCSP O IInteger R - This feature indicates the source port for the message channel.
GevStreamChannelSelector O IInteger R/W - Selects the stream channel to control.
GevSCCFGPacketResendDestination[G O IBoolean R/W - Enables the alternate IP destination for stream packets resent due to a
evStreamChannelSelector] packet resend request.
GevSCCFGAllInTransmission[GevStrea O IBoolean R/W - Enables the selected GVSP transmitter to use the single packet per data
mChannelSelector] block All-in Transmission mode.
GevSCCFGUnconditionalStreaming[Ge O IBoolean R/W - Enables the camera to continue to stream, for this stream channel, if its
vStreamChannelSelector] control channel is closed or regardless of the reception of any ICMP
messages (such as destination unreachable messages).
GevSCCFGExtendedChunkData[GevStr O IBoolean R/W - Enables cameras to use the extended chunk data payload type for this
eamChannelSelector] stream channel.
GevSCPDirection[GevStreamChannelSe O IEnumeration R - Reports the direction of the stream channel.
lector]
GevSCPInterfaceIndex[GevStreamChan O IInteger R/(W) - Index of the logical link to use.
nelSelector]
GevSCPHostPort[GevStreamChannelSe O IInteger R/W - Controls the port of the selected channel to which a GVSP transmitter
lector] must send data stream or the port from which a GVSP receiver may
receive data stream.
GevSCPSFireTestPacket[GevStreamCh O IBoolean R/W - Sends a test packet.
annelSelector]
GevSCPSDoNotFragment[GevStreamC O IBoolean R/W - The state of this feature is copied into the "do not fragment" bit of IP
hannelSelector] header of each stream packet.
GevSCPSBigEndian[GevStreamChanne O IBoolean R/W - Endianess of multi-byte pixel data for this stream.
lSelector]
GevSCPSPacketSize[GevStreamChanne R IInteger R/(W) B Specifies the stream packet size, in bytes, to send on the selected
lSelector] channel for a GVSP transmitter or specifies the maximum packet size
supported by a GVSP receiver.
GevSCPD[GevStreamChannelSelector] R IInteger R/W Controls the delay (in timestamp counter unit) to insert between each
packet for this stream channel.
GevSCDA[GevStreamChannelSelector] O IInteger R/W - Controls the destination IP address of the selected stream channel to
which a GVSP transmitter must send data stream or the destination IP
address from which a GVSP receiver may receive data stream.
GevSCSP[GevStreamChannelSelector] O IInteger R - Indicates the source port of the stream channel.
GevSCZoneCount[GevStreamChannelS O IInteger R - Reports the number of zones per block transmitted on the selected
elector] stream channel.
GevSCZoneDirectionAll[GevStreamCh O IInteger R - Reports the transmission direction of each zone transmitted on the
annelSelector] selected stream channel.
GevSCZoneConfigurationLock[GevStre O IBoolean R/W - Controls whether the selected stream channel multi-zone configuration
amChannelSelector] is locked.
ClTimeSlotsCount O IEnumeration R/(W) - This Camera Link specific feature describes the time multiplexing of
the camera link connection to transfer more than the configuration
allows, in one single clock.
ChunkImage R IRegister R - Returns the entire image data included in the payload.
ChunkOffsetX R IInteger R - Returns the OffsetX of the image included in the payload.
ChunkOffsetY R IInteger R - Returns the OffsetY of the image included in the payload.
ChunkWidth R IInteger R - Returns the Width of the image included in the payload.
ChunkHeight R IInteger R - Returns the Height of the image included in the payload.
ChunkPixelFormat R IEnumeration R - Returns the PixelFormat of the image included in the payload.
ChunkPixelDynamicRangeMin R IInteger R - Returns the minimum value of dynamic range of the image included in
the payload.
ChunkPixelDynamicRangeMax R IInteger R - Returns the maximum value of dynamic range of the image included in
the payload.
ChunkTimestamp R IInteger R - Returns the Timestamp of the image included in the payload at the time
of the FrameStart internal event.
ChunkLineStatusAll R IInteger R - Returns the status of all the I/O lines at the time of the FrameStart
internal event.
ChunkCounterSelector R IEnumeration R/W - Selects which counter to retrieve data from.
ChunkCounterValue[ChunkCounterSele R IInteger R - Returns the value of the selected Chunk counter at the time of the
ctor] FrameStart event.
ChunkTimerSelector R IEnumeration R/W - Selects which Timer to retrieve data from.
ChunkTimerValue[ChunkTimerSelector R IFloat R us Returns the value of the selected Timer at the time of the FrameStart
] internal event.
ChunkExposureTime R IFloat R us Returns the exposure time used to capture the image.
ChunkGainSelector R IEnumeration R/W - Selects which Gain to retrieve data from.
ChunkGain[ChunkGainSelector] R IFloat R - Returns the gain used to capture the image.
ChunkBlackLevelSelector R IEnumeration R/W - Selects which Black Level to retrieve data from.
ChunkBlackLevel[ChunkBlackLevelSel R IFloat R - Returns the black level used to capture the image included in the
ector] payload.
ChunkLinePitch R IInteger R B Returns the LinePitch of the image included in the payload.
ChunkFrameID R IInteger R - Returns the unique Identifier of the frame (or image) included in the
payload.
ChunkSourceID O IEnumeration R - Returns the identifier of Source that the image comes from.
ChunkRegionID O IEnumeration R - Returns the identifier of Region that the image comes from.
ChunkTransferBlockID R IInteger R - Returns the unique identifier of the transfer block used to transport the
payload.
ChunkTransferStreamID R IEnumeration R - Returns identifier of the stream that generates this block.
ChunkTransferQueueCurrentBlockCoun O IInteger R - Returns the current number of blocks in the transfer queue.
t
ChunkStreamChannelID R IInteger R - Returns identifier of the stream channel used to carry the block.
FileAccessOffset[FileSelector][FileOper R IInteger R/(W) B Controls the Offset of the mapping between the device file storage and
ationSelector] the FileAccessBuffer.
FileAccessLength[FileSelector][FileOpe R IInteger R/W B Controls the Length of the mapping between the device file storage and
rationSelector] the FileAccessBuffer.
FileOperationStatus[FileSelector][FileO R IEnumeration R - Represents the file operation execution status.
perationSelector]
FileOperationResult[FileSelector][FileO R IInteger R - Represents the file operation result.
perationSelector]
FileSize[FileSelector] R IInteger R B Represents the size of the selected file in bytes.
SourceCount O IInteger R/(W) - Controls or returns the number of sources supported by the device.
SourceSelector O IEnumeration R/W - Selects the source to control.
3 Device Control
Device control features provides general information and control for the device (camera) and its
sensor. This is mainly used to identify the device during the enumeration process and to obtain
information about the sensor resolution. Other information and controls pertaining to the general
state of the device are also included in this category.
3.1 DeviceControl
Name DeviceControl
Category Root
Level Recommended
Interface ICategory
Access Read
Unit -
Visibility Beginner
Values -
3.2 DeviceType
Name DeviceType
Category DeviceControl
Level Optional
Interface IEnumeration
Access Read
Unit -
Visibility Guru
Values Transmitter
Receiver
Transceiver
Peripheral
3.3 DeviceScanType
Name DeviceScanType
Category DeviceControl
Level Recommended
Interface IEnumeration
Access Read/(Write)
Unit -
Visibility Expert
Values Areascan
Linescan
3.4 DeviceVendorName
Name DeviceVendorName
Category DeviceControl
Level Recommended
Interface IString
Access Read
Unit -
Visibility Beginner
Values Any NULL-terminated string
3.5 DeviceModelName
Name DeviceModelName
Category DeviceControl
Level Recommended
Interface IString
Access Read
Unit -
Visibility Beginner
Values Any NULL-terminated string
3.6 DeviceFamilyName
Name DeviceFamilyName
Category DeviceControl
Level Optional
Interface IString
Access Read
Unit -
Visibility Beginner
Values Any NULL-terminated string
3.7 DeviceManufacturerInfo
Name DeviceManufacturerInfo
Category DeviceControl
Level Recommended
Interface IString
Access Read
Unit -
Visibility Beginner
Values Any NULL-terminated string
3.8 DeviceVersion
Name DeviceVersion
Category DeviceControl
Level Recommended
Interface IString
Access Read
Unit -
Visibility Beginner
Values Any NULL-terminated string
3.9 DeviceFirmwareVersion
Name DeviceFirmwareVersion
Category DeviceControl
Level Recommended
Interface IString
Access Read
Unit -
Visibility Beginner
Values Any NULL-terminated string
3.1 DeviceSerialNumber
Name DeviceSerialNumber
Category DeviceControl
Level Recommended
Interface IString
Access Read
Unit -
Visibility Expert
Values Any NULL-terminated string
3.2DeviceID (Deprecated)
Name DeviceID
Category DeviceControl
Level Recommended
Interface IString
Access Read
Unit -
Visibility Invisible
Values Any NULL-terminated string
This feature is deprecated (See DeviceSerialNumber). It was representing the Device unique
identifier (serial number) .
To help backward compatibility, this feature can be included as Invisible in the device’s XML.
3.3 DeviceUserID
Name DeviceUserID
Category DeviceControl
Level Optional
Interface IString
Access Read/Write
Unit -
Visibility Beginner
Values Any NULL-terminated string
3.4 DeviceSFNCVersionMajor
Name DeviceSFNCVersionMajor
Category DeviceControl
Level Recommended
Interface IInteger
Access Read
Unit -
Visibility Beginner
Values >0
Major version of the Standard Features Naming Convention that was used to create the device`s
GenICam XML.
3.5 DeviceSFNCVersionMinor
Name DeviceSFNCVersionMinor
Category DeviceControl
Level Recommended
Interface IInteger
Access Read
Unit -
Visibility Beginner
Values ≥0
Minor version of the Standard Features Naming Convention that was used to create the device`s
GenICam XML.
3.6 DeviceSFNCVersionSubMinor
Name DeviceSFNCVersionSubMinor
Category DeviceControl
Level Recommended
Interface IInteger
Access Read
Unit -
Visibility Beginner
Values ≥0
Sub minor version of Standard Features Naming Convention that was used to create the device`s
GenICam XML.
3.7 DeviceManifestEntrySelector
Name DeviceManifestEntrySelector
Category DeviceControl
Level Optional
Interface IInteger
Access Read/Write
Unit -
Visibility Guru
Values ≥1
3.8 DeviceManifestXMLMajorVersion
Name DeviceManifestXMLMajorVersion[DeviceManifestEntrySelector]
Category DeviceControl
Level Optional
Interface IInteger
Access Read
Unit -
Visibility Guru
Values ≥0
Indicates the major version number of the GenICam XML file of the selected manifest entry.
3.9 DeviceManifestXMLMinorVersion
Name DeviceManifestXMLMinorVersion[DeviceManifestEntrySelector]
Category DeviceControl
Level Optional
Interface IInteger
Access Read
Unit -
Visibility Guru
Values ≥0
Indicates the minor version number of the GenICam XML file of the selected manifest entry.
3.10 DeviceManifestXMLSubMinorVersion
Name DeviceManifestXMLSubMinorVersion[DeviceManifestEntrySelector]
Category DeviceControl
Level Optional
Interface IInteger
Access Read
Unit -
Visibility Guru
Values ≥0
Indicates the subminor version number of the GenICam XML file of the selected manifest entry.
3.11 DeviceManifestSchemaMajorVersion
Name DeviceManifestSchemaMajorVersion[DeviceManifestEntrySelector]
Category DeviceControl
Level Optional
Interface IInteger
Access Read
Unit -
Visibility Guru
Values ≥0
Indicates the major version number of the schema file of the selected manifest entry.
3.12 DeviceManifestSchemaMinorVersion
Name DeviceManifestSchemaMinorVersion[DeviceManifestEntrySelector]
Category DeviceControl
Level Optional
Interface IInteger
Access Read
Unit -
Visibility Guru
Values ≥0
Indicates the minor version number of the schema file of the selected manifest entry.
3.13 DeviceManifestPrimaryURL
Name DeviceManifestPrimaryURL[DeviceManifestEntrySelector]
Category DeviceControl
Level Optional
Interface IString
Access Read
Unit -
Visibility Guru
Values -
Indicates the first URL to the GenICam XML device description file of the selected manifest entry.
3.14 DeviceManifestSecondaryURL
Name DeviceManifestSecondaryURL[DeviceManifestEntrySelector]
Category DeviceControl
Level Optional
Interface IString
Access Read
Unit -
Visibility Guru
Values -
Indicates the second URL to the GenICam XML device description file of the selected manifest
entry.
3.15 DeviceTLType
Name DeviceTLType
Category DeviceControl
Level Recommended
Interface IEnumeration
Access Read
Unit -
Visibility Beginner
Values GigEVision
CameraLink
CameraLinkHS
CoaXPress
USB3Vision
Custom
• CoaXPress: CoaXPress.
• USB3Vision: USB3 Vision.
• Custom: Custom Transport Layer.
3.16 DeviceTLVersionMajor
Name DeviceTLVersionMajor
Category DeviceControl
Level Recommended
Interface IInteger
Access Read
Unit -
Visibility Beginner
Values >0
3.17 DeviceTLVersionMinor
Name DeviceTLVersionMinor
Category DeviceControl
Level Recommended
Interface IInteger
Access Read
Unit -
Visibility Beginner
Values ≥0
3.18 DeviceTLVersionSubMinor
Name DeviceTLVersionSubMinor
Category DeviceControl
Level Recommended
Interface IInteger
Access Read
Unit -
Visibility Beginner
Values ≥0
3.19 DeviceGenCPVersionMajor
Name DeviceGenCpVersionMajor
Category DeviceControl
Level Recommended
Interface IInteger
Access Read
Unit -
Visibility Beginner
Values >0
3.20 DeviceGenCPVersionMinor
Name DeviceGenCPVersionMinor
Category DeviceControl
Level Recommended
Interface IInteger
Access Read
Unit -
Visibility Beginner
Values ≥0
3.21 DeviceMaxThroughput
Name DeviceMaxThroughput
Category DeviceControl
Level Optional
Interface IInteger
Access Read
Unit Bps
Visibility Expert
Values >0
Maximum bandwidth of the data that can be streamed out of the device. This can be used to
estimate if the connection can sustain transfer of free-running images from the camera at its
maximum speed.
3.22 DeviceConnectionSelector
Name DeviceConnectionSelector
Category DeviceControl
Level Recommended
Interface IInteger
Access Read/(Write)
Unit -
Visibility Beginner
Values ≥0
3.23 DeviceConnectionSpeed
Name DeviceConnectionSpeed[DeviceConnectionSelector]
Category DeviceControl
Level Optional
Interface IInteger
Access Read
Unit Bps
Visibility Expert
Values >0
3.24 DeviceConnectionStatus
Name DeviceConnectionStatus[DeviceConnectionSelector]
Category DeviceControl
Level Optional
Interface IEnumeration
Access Read
Unit -
Visibility Expert
Values Active
Inactive
3.25 DeviceLinkSelector
Name DeviceLinkSelector
Category DeviceControl
Level Recommended
Interface IInteger
Access Read/(Write)
Unit -
Visibility Beginner
Values ≥0
3.26 DeviceLinkSpeed
Name DeviceLinkSpeed[DeviceLinkSelector]
Category DeviceControl
Level Optional
Interface IInteger
Access Read
Unit Bps
Visibility Expert
Values ≥0
Note that this represents the total speed of all the connections of the Link.
3.27 DeviceLinkThroughputLimitMode
Name DeviceLinkThroughputLimitMode[DeviceLinkSelector]
Category DeviceControl
Level Recommended
Interface IEnumeration
Access Read/Write
Unit -
Visibility Expert
Values On
Off
3.28 DeviceLinkThroughputLimit
Name DeviceLinkThroughputLimit[DeviceLinkSelector]
Category DeviceControl
Level Recommended
Interface IInteger
Access Read/(Write)
Unit Bps
Visibility Expert
Values ≥0
Limits the maximum bandwidth of the data that will be streamed out by the device on the selected
Link. If necessary, delays will be uniformly inserted between transport layer packets in order to
control the peak bandwidth.
If the device uses many connections to transmit the data, the feature represents the sum of all the
traffic and the bandwidth should be distributed uniformly on the various connections.
Any Transport Layer specific bandwidth controls should be kept in sync with this control as much
as possible.
3.29 DeviceLinkConnectionCount
Name DeviceLinkConnectionCount[DeviceLinkSelector]
Category DeviceControl
Level Optional
Interface IInteger
Access Read
Unit -
Visibility Beginner
Values ≥0
Returns the number of physical connection of the device used by a particular Link.
3.30 DeviceLinkHeartbeatMode
Name DeviceLinkHeartbeatMode[DeviceLinkSelector]
Category DeviceControl
Level Optional
Interface IEnumeration
Access Read/Write
Unit -
Visibility Expert
Values On
Off
3.31 DeviceLinkHeartbeatTimeout
Name DeviceLinkHeartbeatTimeout[DeviceLinkSelector]
Category DeviceControl
Level Optional
Interface IFloat
Access Read/Write
Unit us
Visibility Guru
Values >0
3.32 DeviceLinkCommandTimeout
Name DeviceCommandTimeout [DeviceLinkSelector]
Category DeviceControl
Level Optional
Interface IFloat
Access Read
Unit us
Visibility Guru
Values >0
3.33 DeviceStreamChannelCount
Name DeviceStreamChannelCount
Category DeviceControl
Level Optional
Interface IInteger
Access Read
Unit -
Visibility Expert
Values ≥0
3.34 DeviceStreamChannelSelector
Name DeviceStreamChannelSelector
Category DeviceControl
Level Optional
Interface IInteger
Access Read/Write
Unit -
Visibility Expert
Values ≥0
3.35 DeviceStreamChannelType
Name DeviceStreamChannelDirection[DeviceStreamChannelSelector]
Category DeviceControl
Level Optional
Interface IEnumeration
Access Read
Unit -
Visibility Guru
Values Transmitter
Receiver
3.36 DeviceStreamChannelLink
Name DeviceStreamChannelLink[DeviceStreamChannelSelector]
Category DeviceControl
Level Optional
Interface IInteger
Access Read/(Write)
Unit -
Visibility Guru
Values ≥0
Index of device`s Link to use for streaming the specifed stream channel.
3.37 DeviceStreamChannelEndianness
Name DeviceStreamChannelEndianness [DeviceStreamChannelSelector]
Category DeviceControl
Level Optional
Interface IBoolean
Access Read/(Write)
Unit -
Visibility Guru
Values Big
Little
3.38 DeviceStreamChannelPacketSize
Name DeviceStreamChannelPacketSize [DeviceStreamChannelSelector]
Category DeviceControl
Level Recommended
Interface IInteger
Access Read/(Write)
Unit B
Visibility Expert
Values >0
Specifies the stream packet size, in bytes, to send on the selected channel for a Transmitter or
specifies the maximum packet size supported by a receiver.
3.39 DeviceMessageChannelCount
Name DeviceMessageChannelCount
Category DeviceControl
Level Optional
Interface IInteger
Access Read
Unit -
Visibility Expert
Values ≥0
Indicates the number of message channels supported by the specified Link of the device.
2012-10-25 Page 79 of 366
Version 2.0 Standard Features Naming Convention
3.40 DeviceCharacterSet
Name DeviceCharacterSet
Category DeviceControl
Level Optional
Interface IEnumeration
Access Read
Unit -
Visibility Guru
Values UTF8
ASCII
3.41 DeviceReset
Name DeviceReset
Category DeviceControl
Level Recommended
Interface ICommand
Access Write
Unit -
Visibility Guru
Values -
3.42 DeviceIndicatorMode
Name DeviceIndicatorMode
Category DeviceControl
Level Optional
Interface IEnumeration
Access Read/Write
Unit -
Visibility Expert
Values Inactive
Active
ErrorStatus
Controls the behavior of the indicators (such as LEDs) showing the status of the Device.
3.43 DeviceFeaturePersistenceStart
Name DeviceFeaturePersistenceStart
Level Optional
Interface ICommand
Access (Read)/Write
Unit -
Visibility Guru
Values -
Indicate to the device and GenICam XML to get ready for persisting of all streamable features.
Note that device persistence is done by reading the device features and saving them outside of the
device.
3.44 DeviceFeaturePersistenceEnd
Name DeviceFeaturePersistenceEnd
Level Optional
Interface ICommand
Access (Read)/Write
Unit -
Visibility Guru
Values -
3.45 DeviceRegistersStreamingStart
Name DeviceRegistersStreamingStart
Category DeviceControl
Level Recommended
Interface ICommand
Access (Read)/Write
Unit -
Visibility Guru
Values -
Prepare the device for registers streaming without checking for consistency.
If the camera implements this feature, GenApi guarantees using it to announce register streaming.
If the feature is present, but currently not writable (locked), the application must not start register
streaming and must avoid switching the access mode and range verification off until the feature
becomes writable again.
3.46 DeviceRegistersStreamingEnd
Name DeviceRegistersStreamingEnd
Category DeviceControl
Level Recommended
Interface ICommand
Access (Read)/Write
Unit -
Visibility Guru
Values -
Announce the end of registers streaming. This will do a register set validation for consistency and
activate it. This will also update the DeviceRegistersValid flag.
3.47 DeviceRegistersCheck
Name DeviceRegistersCheck
Category DeviceControl
Level Recommended
Interface ICommand
Access (Read)/Write
Unit -
Visibility Expert
Values -
2012-10-25 Page 82 of 366
Version 2.0 Standard Features Naming Convention
Perform the validation of the current register set for consistency. This will update the
DeviceRegistersValid flag.
3.48 DeviceRegistersValid
Name DeviceRegistersValid
Category DeviceControl
Level Recommended
Interface IBoolean
Access Read
Unit -
Visibility Expert
Values True
False
3.49 DeviceTemperatureSelector
Name DeviceTemperatureSelector
Category DeviceControl
Level Optional
Interface IEnumeration
Access Read/Write
Unit -
Visibility Expert
Values Sensor
Mainboard
Device-specific
Selects the location within the device, where the temperature will be measured.
Possible values are:
• Sensor: Temperature of the image sensor of the camera.
• Mainboard: Temperature of the device`s mainboard.
3.50 DeviceTemperature
Name DeviceTemperature[DeviceTemperatureSelector]
Category DeviceControl
Level Optional
Interface IFloat
Access Read
Unit C
Visibility Expert
Values Device-specific
3.51 DeviceClockSelector
Name DeviceClockSelector
Category DeviceControl
Level Optional
Interface IEnumeration
Access Read/(Write)
Unit -
Visibility Expert
Values Sensor
SensorDigitization
CameraLink
Device-specific
3.52 DeviceClockFrequency
Name DeviceClockFrequency[DeviceClockSelector]
Category DeviceControl
Level Optional
Interface IFloat
Access Read/(Write)
Unit Hz
Visibility Expert
2012-10-25 Page 84 of 366
Version 2.0 Standard Features Naming Convention
Values ≥0
3.53 DeviceSerialPortSelector
Name DeviceSerialPortSelector
Category DeviceControl
Level Recommended
Interface IEnumeration
Access Read/(Write)
Unit -
Visibility Expert
Values CameraLink
Device-specific
3.54 DeviceSerialPortBaudRate
Name DeviceSerialPortBaudRate[DeviceSerialPortSel
ector]
Category DeviceControl
Level Recommended
Interface IEnumeration
Access Read/(Write)
Unit -
Visibility Expert
Values Baud9600
Baud19200
Baud38400
Baud57600
Baud115200
Baud230400
Baud460800
Baud921600
…
This feature controls the baud rate used by the selected serial port. Typical values listed should be
used whenever possible. Arbitrary values can also be used by defining new enumeration entries.
Possible values are:
• Baud9600: Serial port speed of 9600 baud.
• Baud19200: Serial port speed of 19200 baud.
• Baud38400: Serial port speed of 38400 baud.
• Baud57600: Serial port speed of 57600 baud.
• Baud115200: Serial port speed of 115200 baud.
• Baud230400: Serial port speed of 230400 baud.
• Baud460800: Serial port speed of 460800 baud.
• Baud921600: Serial port speed of 921600 baud.
3.55 Timestamp
Name Timestamp
Category DeviceControl
Level Recommended
Interface IInteger
Access Read
Unit ns
Visibility Expert
Values ≥0
3.56 TimestampReset
Name TimestampReset
Category DeviceControl
Level Optional
Interface ICommand
Access (Read)/Write
Unit -
Visibility Expert
Values -
(0,0)
OffsetY
OffsetX
Region of Interest
HeightMax Height
Height.Max
Width
Width.Max
WidthMax
Each pixel in the image has a format defined by the PixelFormat feature. Only a subset of the
possible pixel formats is presented in this document. The complete list of possible standard pixel
formats and their layout can be found in the "Pixel Format naming Convention (PFNC) "
specification hosted by the AIA organization (see http://www.visiononline.org). .Because the
PixelFormat feature contains a mix of informations specified by the user and informations
provided by the device, it is suitable for describing the whole pixel settings but might be less
practical when individual setting must be set or inquired. Therefore a second set of features exists
composed of the individual components of PixelFormat. Those features are PixelCoding,
PixelSize, PixelColorFilter, PixelDynamicRangeMin and PixelDynamicRangeMax.
Even if the PixelFormat might allow for, e.g. 16 bits per pixel, the real image data might provide
only a certain range of value (e.g. 12 bits per pixel because the camera is equipped with a 12 bit
analog to digital converter only). In that case, PixelDynamicRangeMin and
PixelDynamicRangeMax specify the lower and upper limits of the pixel values in the image. In
general, PixelDynamicRangeMin should be zero and PixelDynamicRangeMax should be a power
[
of two ( 0, 2
DataDepth
]
− 1 ). There should be no missing codes in the range.
4.1 ImageFormatControl
Name ImageFormatControl
Category Root
Level Recommended
Interface ICategory
Access Read
Unit -
Visibility Beginner
Values -
4.2 SensorWidth
Name SensorWidth
Category ImageFormatControl
Level Recommended
Interface IInteger
Access Read
Unit -
Visibility Expert
Values >0
4.3 SensorHeight
Name SensorHeight
Category ImageFormatControl
Level Recommended
Interface IInteger
Access Read
Unit -
Visibility Expert
Values >0
4.4 SensorTaps
Name SensorTaps
Category ImageFormatControl
Level Optional
Interface IEnumeration
Access Read/(Write)
Unit -
Visibility Expert
Values One
Two
Three
Four
Eight
Ten
…
Device-specific
• Eight: 8 taps.
• Ten: 10 taps.
4.5 SensorDigitizationTaps
Name SensorDigitizationTaps
Category ImageFormatControl
Level Optional
Interface IEnumeration
Access Read/(Write)
Unit -
Visibility Expert
Values One
Two
Three
Four
Eight
Ten
…
Device-specific
Number of digitized samples outputted simultaneously by the camera A/D conversion stage.
Possible values are:
• One: 1 tap.
• Two: 2 taps.
• Three: 3 taps.
• Four: 4 taps.
• Eight: 8 taps.
• Ten: 10 taps.
4.6 WidthMax
Name WidthMax
Category ImageFormatControl
Level Recommended
Interface IInteger
Access Read
Unit -
Visibility Expert
Values >0
Maximum width of the image (in pixels). The dimension is calculated after horizontal binning,
decimation or any other function changing the horizontal dimension of the image.
WidthMax does not take into account the current Region of interest (Width or OffsetX). Its value
must be greater than 0 and less than or equal to SensorWidth (unless an oversampling feature is
present).
4.7 HeightMax
Name HeightMax
Category ImageFormatControl
Level Recommended
Interface IInteger
Access Read
Unit -
Visibility Expert
Values >0
Maximum height of the image (in pixels). This dimension is calculated after vertical binning,
decimation or any other function changing the vertical dimension of the image
HeightMax does not take into account the current Region of interest (Height or OffsetY). Its value
must be greater than 0 and less than or equal to SensorHeight (unless an oversampling feature is
present).
4.8 RegionSelector
Name RegionSelector
Category ImageFormatControl
Level Optional
Interface IEnumeration
Access Read/(Write)
Unit -
Visibility Beginner
Values Region0 (if 0 based)
Region1
Region2
…
All
Selects the Region of interest to control. The RegionSelector feature allows devices that are able to
extract multiple regions out of an image, to configure the features of those individual regions
independently.
Possible values are:
• Region0: Selected feature will control the region 0.
• Region1: Selected feature will control the region 1.
• Region2: Selected feature will control the region 2.
• All: Selected features will control all the regions at the same time.
4.9 RegionMode
Name RegionMode[RegionSelector]
Category ImageFormatControl
Level Optional
Interface IEnumeration
Access Read/Write
sUnit -
Visibility Beginner
Values Off
On
4.10 RegionDestination
Name RegionDestination[RegionSelector]
Category ImageFormatControl
Level Optional
Interface IEnumeration
Access Read/(Write)
Unit -
Visibility Expert
Values Stream0
Stream1
Stream2
…
4.11 Width
Name Width[RegionSelector]
Category ImageFormatControl
Level Recommended
Interface IInteger
Access Read/(Write)
Unit -
Visibility Beginner
Values >0
4.12 Height
Name Height[RegionSelector]
Category ImageFormatControl
Level Recommended
Interface IInteger
Access Read/(Write)
Unit -
Visibility Beginner
Values >0
This reflects the current Region of interest. The maximum value of this feature takes into account
vertical binning, decimation, or any other function changing the maximum vertical dimensions of
the image and is typically equal to HeightMax - OffsetY.
This feature is generaly mandatory for transmitters and transceivers of most Transport Layers.
4.13 OffsetX
Name OffsetX[RegionSelector]
Category ImageFormatControl
Level Recommended
Interface IInteger
Access Read/Write
Unit -
Visibility Beginner
Values ≥0
Horizontal offset from the origin to the region of interest (in pixels).
4.14 OffsetY
Name OffsetY[RegionSelector]
Category ImageFormatControl
Level Recommended
Interface IInteger
Access Read/Write
Unit -
Visibility Beginner
Values ≥0
Vertical offset from the origin to the region of interest (in pixels).
4.15 LinePitch
Name LinePitch[RegionSelector]
Category ImageFormatControl
Level Recommended
Interface IInteger
Access Read/Write
Unit B
Visibility Expert
Values ≥0
Total number of bytes between 2 successive lines. This feature is used to facilitate alignment of
image data.
This might be useful if the system has specific limitations, such as having the lines aligned on 32-
bit boundaries.
4.16 BinningSelector
Name BinningSelector
Category ImageFormatControl
Level Optional
Interface IEnumeration
Access Read/(Write)
Unit -
Visibility Expert
Values Sensor
Region0 (if 0 based)
Region1
Region2
…
Selects which binning engine is controlled by the BinningHorizontal and BinningVertical features.
Possible values are:
• Sensor: Selected features will control the sensor binning.
• Region0: Selected feature will control the region 0 binning.
• Region1: Selected feature will control the region 1 binning.
• Region2: Selected feature will control the region 2 binning.
4.17 BinningHorizontal
Name BinningHorizontal[BinningSelector]
Category ImageFormatControl
Level Optional
Interface IInteger
Access Read/Write
Unit -
Visibility Expert
Values >0
Number of horizontal photo-sensitive cells to combine together. This increases the intensity (or
signal to noise ratio) of the pixels and reduces the horizontal resolution (width) of the image.
A value of 1 indicates that no horizontal binning is performed by the camera.
4.18 BinningVertical
Name BinningVertical[BinningSelector]
Category ImageFormatControl
Level Optional
Interface IInteger
Access Read/Write
Unit -
Visibility Expert
Values >0
Number of vertical photo-sensitive cells to combine together. This increases the intensity (or signal
to noise ratio) of the pixels and reduces the vertical resolution (height) of the image.
A value of 1 indicates that no vertical binning is performed by the camera.
4.19 DecimationHorizontal
Name DecimationHorizontal
Category ImageFormatControl
Level Optional
Interface IInteger
Access Read/Write
Unit -
Visibility Expert
Values ≥0
Horizontal sub-sampling of the image. This reduces the horizontal resolution (width) of the image
by the specified horizontal decimation factor.
This might be done by pixel dropping or by first applying a horizontal low-pass filter before pixel
dropping.
A value of 1 indicates that the camera performs no horizontal decimation.
4.20 DecimationVertical
Name DecimationVertical
Category ImageFormatControl
Level Optional
Interface IInteger
Access Read/Write
Unit -
Visibility Expert
Values ≥0
Vertical sub-sampling of the image. This reduces the vertical resolution (height) of the image by the
specified vertical decimation factor.
This might be implemented by pixel dropping or by first applying a vertical low-pass filter before
pixel dropping.
A value of 1 indicates that the camera performs no vertical decimation.
4.21 ReverseX
Name ReverseX
Category ImageFormatControl
Level Recommended
Interface IBoolean
Access Read/Write
Unit -
Visibility Expert
Values True
False
Flip horizontally the image sent by the device. The Region of interest is applied after the flipping.
4.22 ReverseY
Name ReverseY
Category ImageFormatControl
Level Recommended
Interface IBoolean
Access Read/Write
Unit -
Visibility Expert
Values True
False
Flip vertically the image sent by the device. The Region of interest is applied after the flipping.
4.23 PixelFormat
Name PixelFormat
Category ImageFormatControl
Level Recommended
Interface IEnumeration
Access Read/(Write)
Unit -
Visibility Beginner
Values Mono1p
Mono2p
Mono4p
Mono8
Mono8s
Mono10
Mono10c3a64
Mono10c3p32
Mono10g12
Mono10msb
Mono10p
Mono10pmsb
Mono10s
Mono12
Mono12g
Mono12msb
Mono14
Mono16
R8
G8
B8
RGB8
RGB8_Planar
RGB8a32
RGBa8
RGB10
RGB10_Planar
RGB10g32
RGB10g32msb
RGB10p32
RGB10p32msb
RGB12
RGB12_Planar
RGB16
RGB16_Planar
2012-10-25 Page 99 of 366
Version 2.0 Standard Features Naming Convention
RGB565p
BGR10
BGR12
BGR16
BGR565p
BGR8
BGRa8
YUV411_8
YUV422_8
YUV8
YCbCr411_8
YCbCr422_8
YCbCr601_411_8
YCbCr601_422_8
YCbCr601_8
YCbCr709_411_8
YCbCr709_422_8
YCbCr709_8
YCbCr8
BayerBG8
BayerGB8
BayerGR8
BayerRG8
BayerBG10
BayerBG10g12
BayerGB10
BayerGB10g12
BayerGR10
BayerGR10g12
BayerRG10
BayerRG10g12
BayerBG12
BayerBG12g
BayerGB12
BayerGB12g
BayerGR12
BayerGR12g
BayerRG12
BayerRG12g
BayerBG16
BayerGB16
BayerGR16
BayerRG16
Raw16
2012-10-25 Page 100 of 366
Version 2.0 Standard Features Naming Convention
Raw8
Device-specific
Mono12Packed
BayerGR10Packed
BayerRG10Packed
BayerGB10Packed
BayerBG10Packed
BayerGR12Packed
BayerRG12Packed
BayerGB12Packed
BayerBG12Packed
RGB10V1Packed
BGR10V1Packed
RGB12V1Packed
- Deprecated:
Format of the pixels provided by the device. It represents all the information provided by
PixelCoding, PixelSize, PixelColorFilter combined in a single feature.
Note that only a subset of the possible pixel formats is listed here. The complete list of possible
standard pixel formats and their detailed layout can be found in the "Pixel Format Naming
2012-10-25 Page 101 of 366
Version 2.0 Standard Features Naming Convention
Convention (PFNC)" specification hosted by the AIA organisation. Refer to the most recent version
of that convention for additional information about the construction of a pixel format name.
Possible values are:
• Mono1p: Mono 1 bit packed.
• Mono2p: Mono 2 bit packed.
• Mono4p: Mono 4 bit packed.
• Mono8: Mono 8 bit packed.
• Mono8s: Mono 1 bit signed.
• Mono10: Mono 10 bit.
• Mono10c3a64: Mono 10 bit in 64 bit.
• Mono10c3p32: Mono 10 bit in 32bit.
• Mono10g12: Mono 10 bit grouped in 12 bit.
• Mono10msb: Mono 10 bit packed aligned on Msb.
• Mono10p: Mono 10 bit packed.
• Mono10pmsb: Mono 10 bit packed aligned on Msb.
• Mono10s: Mono 10 bit signed.
• Mono12: Mono 12 bit packed.
• Mono12g: Mono 12 bit grouped.
• Mono12msb: Mono 12 bit aligned on Msb.
• Mono14: Mono 14 bit.
• Mono16: Mono 16 bit.
• R8: Red 8 bit.
• G8: Green 8 bit.
• B8: Blue 8 bit.
• RGB8: Red, Green, Blue 8 bit
• RGB8_Planar: Red, Green, Blue 8 bit planar.
• RGB8a32: Red, Green, Blue 8 bit aligned in 32 bit pixel
• RGBa8: Red, Green, Blue 8 bit aligned on 8 bit
• RGB10: Red, Green, Blue 10 bit.
• RGB10_Planar: Red, Green, Blue 10 bit planar.
• RGB10g32: Red, Green, Blue 8 bit grouped in 32 bit pixel.
• RGB10g32msb: Red, Green, Blue 10 bit grouped in 32 bit pixel aligned on Msb.
• RGB10p32: Red, Green, Blue 10 bit packed in 32 bit pixel.
• RGB10p32msb: Red, Green, Blue 10 bit packed in 32 bit pixel.
2012-10-25 Page 102 of 366
Version 2.0 Standard Features Naming Convention
The values of the enumeration entries are transport layer specific. Refer to the appropriate transport
layer specification for additional information.
This feature is generaly mandatory for transmitters and transceivers of most Transport Layers.
This feature is deprecated. It represents the coding of the pixels in the image. Raw gives the data in
the native format of the sensor.
Possible values are:
• Mono: Mono.
• MonoSigned: Mono signed.
• MonoPacked: Mono packed.
• RGBPacked: RGB packed.
• BGRPacked: BGR packed.
• RGBAPacked: RGBA packed.
• BGRAPacked: BGRA packed.
• RGBPlanar: RGB planar.
• YUV411Packed: YUV 411 packed.
• YUV422Packed: YUV 422 packed.
• YUV444Packed: YUV 444 packed.
• YUYVPacked: YUYV packed.
• Raw: Raw.
• RawPacked: Raw packed.
Raw is mainly used for Bayer sensor. This value must always be coherent with the PixelFormat
feature.
4.25 PixelSize
Name PixelSize
Category ImageFormatControl
Level Recommended
Interface IEnumeration
Access Read/(Write)
Unit -
Visibility Expert
Values Bpp1
Bpp2
Bpp4
Bpp8
Bpp10
Bpp12
Bpp14
Bpp16
Bpp24
Bpp30
Bpp32
Bpp36
Bpp48
Bpp64
4.26 PixelColorFilter
Name PixelColorFilter
Category ImageFormatControl
Level Recommended
Interface IEnumeration
Access Read/(Write)
Unit -
Visibility Expert
Values None
BayerRG
BayerGB
BayerGR
BayerBG
4.27 PixelDynamicRangeMin
Name PixelDynamicRangeMin
Category ImageFormatControl
Level Optional
Interface IInteger
Access Read/Write
Unit -
Visibility Expert
Values Device-specific
Minimum value that can be returned during the digitization process. This corresponds to the darkest
value of the camera. For color camera, this returns the smallest value that each color component can
take.
4.28 PixelDynamicRangeMax
Name PixelDynamicRangeMax
Category ImageFormatControl
Level Optional
Interface IInteger
Access Read/Write
Unit -
Visibility Expert
Values Device-specific
Maximum value that will be returned during the digitization process. This corresponds to the
brightest value of the camera. For color camera, this returns the biggest value that each color
component can take.
4.29 TestPatternGeneratorSelector
Name TestPatternGeneratorSelector
Category ImageFormatControl
Level Optional
Interface IEnumeration
Access Read/(Write)
Unit -
Visibility Beginner
Values Sensor
Region0 (if 0 based)
Region1
Region2
…
• Sensor: TestPattern feature will control the sensor’s test pattern generator.
• Region0: TestPattern feature will control the region 0 test pattern generator.
• Region1: TestPattern feature will control the region 1 test pattern generator.
• Region2: TestPattern feature will control the region 2 test pattern generator.
4.30 TestPattern
Name TestPattern[TestPatternGeneratorSelector]
Category ImageFormatControl
Level Optional
Interface IEnumeration
Access Read/Write
Unit -
Visibility Beginner
Values Off
Black
White
GreyHorizontalRamp
GreyVerticalRamp
GreyHorizontalRampMoving
GreyVerticalRampMoving
HorizontalLineMoving
VerticalLineMoving
ColorBar
FrameCounter
Device-specific
Selects the type of test pattern that is generated by the device as image source.
Possible values are:
• Off: Image is coming from the sensor.
• Black: Image is filled with the darkest possible image.
• White: Image is filled with the brightest possible image.
• GreyHorizontalRamp: Image is filled horizontally with an image that goes from the
darkest possible value to the brightest.
• GreyVerticalRamp: Image is filled vertically with an image that goes from the darkest
possible value to the brightest.
• GreyHorizontalRampMoving: Image is filled horizontally with an image that goes from
the darkest possible value to the brightest and that moves horizontally from left to right at
each frame.
• GreyVerticalRampMoving: Image is filled vertically with an image that goes from the
darkest possible value to the brightest and that moves verticaly from top to bottom at each
frame.
• HorizontalLineMoving: A moving horizontal line is superimposed on the live image.
• VerticalLineMoving: A moving vertical line is superimposed on the live image.
• ColorBar: Image is filled with stripes of color including White, Black, Red, Green, Blue,
Cyan, Magenta and Yellow.
• FrameCounter: A frame counter is superimposed on the live image.
Other values are device-specific and represent particular test images digitally generated by the
camera.
This feature is deprecated (see TestPattern). Selects the type of test image that is sent by the device.
To help backward compatibility, this feature can be included as Invisible in the device’s XML.
Possible values are:
• Off: Image is coming from the sensor.
• Black: Image is filled with the darkest possible image.
• White: Image is filled with the brightest possible image.
• GreyHorizontalRamp: Image is filled horizontally with an image that goes from the
darkest possible value to the brightest.
• GreyVerticalRamp: Image is filled vertically with an image that goes from the darkest
possible value to the brightest.
• GreyHorizontalRampMoving: Image is filled horizontally with an image that goes from
the darkest possible value to the brightest and that moves horizontally from left to right at
each frame.
• GreyVerticalRampMoving: Image is filled vertically with an image that goes from the
darkest possible value to the brightest and that moves verticaly from top to bottom at each
frame.
• HorizontalLineMoving: A moving horizontal line is superimposed on the live image.
• VerticalLineMoving: A moving vertical line is superimposed on the live image.
• ColorBar: Image is filled with stripes of color including White, Black, Red, Green, Blue,
Cyan, Magenta and Yellow.
• FrameCounter: A frame counter is superimposed on the live image.
Other values are device-specific and represent particular test images digitally generated by the
camera.
4.32 Deinterlacing
Name Deinterlacing
Category ImageFormatControl
Level Optional
Interface IEnumeration
Access Read/Write
Unit -
Visibility Beginner
Values Off
LineDuplication
Weave
…
Device-specific
4.33.1 ImageCompressionMode
Name ImageCompressionMode
Category ImageFormatControl
Level Optional
Interface IEnumeration
Access Read/Write
Visibility Beginner
Unit -
Values Off
JPEG
JPEG2000
H264
…
Device-specific
Enable a specific image compression mode as the base mode for image transfer. Optionally, chunk
data can be appended to the compressed image (see chunk section).
Possible values are:
• Off: Default value. Image compression is disabled. Images are transmitted uncompressed.
• JPEG: JPEG compression is selected.
• JPEG2000: JPEG 2000 compression is selected.
• H264: H.264 compression is selected.
4.33.2 ImageCompressionRateOption
Name ImageCompressionRateOption
Category ImageFormatControl
Level Optional
Interface IEnumeration
Access Read/Write
Unit -
Visibility Expert
Values FixBitrate
FixQuality
…
Device-specific
Two rate controlling options are offered: fixed bit rate or fixed quality. The exact implementation to
achieve one or the other is vendor-specific.
Note that not all compression techniques or implementations may support this feature.
Possible values are:
• FixBitrate: Output stream follows a constant bit rate. Allows easy bandwidth management
on the link.
• FixQuality: Output stream has a constant image quality. Can be used when image
processing algorithms are sensitive to image degradation caused by excessive data
compression.
4.33.3 ImageCompressionQuality
Name ImageCompressionQuality
Category ImageFormatControl
Level Optional
Interface IInteger
Access Read/(Write)
Unit -
Visibility Expert
Values Device-specific
4.33.4 ImageCompressionBitrate
Name ImageCompressionBitrate
Category ImageFormatControl
Level Optional
Interface IFloat
Access Read/(Write)
Unit Mbps
Visibility Expert
Values Device-specific
4.33.5 ImageCompressionJPEGFormatOption
Name ImageCompressionJPEGFormatOption
Category ImageFormatControl
Level Optional
Interface IEnumeration
Access Read/Write
Unit -
Visibility Expert
Values Lossless
BaselineStandard
BaselineOptimized
Progressive
…
Device-specific
When JPEG is selected as the compression format, a device might optionally offer better control
over JPEG-specific options through this feature.
Possible values are:
• Lossless: Selects lossless JPEG compression based on a predictive coding model.
• BaselineStandard: Indicates this is a baseline sequential (single-scan) DCT-based JPEG.
• BaselineOptimized: Provides optimized color and slightly better compression than baseline
standard by using custom Huffman tables optimized after statistical analysis of the image
content.
• Progressive: Indicates this is a progressive (multi-scan) DCT-based JPEG.
5 Acquisition Control
The Acquisition Control chapter describes all features related to image acquisition, including the
trigger and exposure control. It describes the basic model for acquisition and the typical behavior of
the device.
This section describes the vocabulary and terms used to describe and name the acquisition related
features. It also defines the acquisition related signals and their position in time during the
acquisition of images by a device.
An Acquisition is composed of one or many Frames made of Line(s). The Frames of an
Acquisition can optionally be grouped in smaller Bursts that are triggered individually. An
Acquisition is defined as the capture of a sequence of one or many Frame(s) (see Figure 5-1).
The transfer of the frame(s) of an Acquisition starts with the beginning of the transfer of the first
frame and ends with the completion of the transfer of the last one.
AcquisitionStart
Trigger
Frame 1 Frame 2 … Frame N
(optional)
(optional) (optional)
AcquisitionStart AcquisitionEnd
AcquisitionActive
AcquisitionTransferStart AcquisitionTransferEnd
AcquisitionTransfer
A Burst of Frame(s) is defined as the capture of a group of one or many Frame(s) within an
Acquisition (see Figure 5-2). If a FrameBurstStart or FrameBurstActive trigger is enabled (its
TriggerMode=On), an acquisition can be broken in many smaller Bursts. In this case, each Burst
has its own trigger. If only the FrameBurstStart trigger is enabled,
AcquisitionBurstFrameCount determines the length of each burst. If the FrameBurstStart and
FrameBurstEnd triggers are enabled, they are used to delimit the length of every single burst. If
the FrameBurstActive trigger is enabled, it determines the length of each individual burst (the
burst lasts as long as the trigger is asserted).
The transfer of the frame(s) of a burst starts with the beginning of the transfer of the first frame of
the burst and end with the completion of the transfer of the last one.
AcquisitionActive
AcquisitionTransfer
A Frame is defined as the capture of Width pixels x Height lines. A Frame starts with an optional
Exposure period and ends with the completion of the sensor read out. Generally, a transfer period
will start during the sensor read out and will finish sometime after it but it is not considered as part
of the Frame.
Frame 1:
ExposureActive
FrameActive
Transfer 1
FrameTransferStart FrameTransferEnd
FrameTransfer
Frame 2:
Transfer 2
For Line Scan acquisition, the definition of Frame stays the same but the exposure and read out are
done for each line of the virtual Frame.
Line 1:
ExposureActive
LineActive
Transfer 1
LineTransferStart LineTransferEnd
FrameActive
LineTransfer
Line 2:
Transfer 2
Line 3:
LineStart Exposure 3 …
Trigger
The AcquisitionMode controls the mode of acquisition for the device. This mainly affects the
number of frames captured in the Acquisition (SingleFrame, MultiFrame or Continuous).
The optional AcquisitionArm command is used to verify and freeze all parameters relevant for the
image data capture. It prepares the device for the AcquisitionStart.
The AcquisitionStart command is used to start the Acquisition.
The AcquisitionStop command will stop the Acquisition at the end of the current Frame. It can be
used in any acquisition mode and if the camera is waiting for a trigger, the pending Frame will be
cancelled.
The AcquisitionAbort command can be used to abort an Acquisition at any time. This will end the
capture immediately without completing the current Frame.
AcquisitionFrameCount controls the number of frames that will be captured when
AcquisitionMode is MultiFrame.
AcquisitionBurstFrameCount determines the length of each burst to capture if the
FrameBurstStart trigger is enabled and the FrameBurstEnd trigger is disabled.
AcquisitionFrameRate controls the rate at which the Frames are captured when TriggerMode is
Off.
AcquisitionLineRate controls the rate at which the Lines in each Frame are captured when
TriggerMode is Off. This is generally useful for line scan cameras.
AcquisitionStatusSelector and AcquisitionStatus can be used to read the status of the internal
acquisition signals. The standard acquisition signals Status are: AcquisitionTriggerWait,
AcquisitionActive, AcquisitionTransfer, FrameTriggerWait, FrameActive, ExposureActive
(see Figure 5-1 and Figure 5-3).
See the Acquisition and Trigger Examples section of this document for more complete use cases
of the acquisition and trigger features in conjunction with other related sections such as I/O and
analog controls.
This section gives the timing diagrams and features setting order for the most common acquisition scenarios.
AcquisitionMode = Continuous;
TriggerSelector = AcquisitionStart;
AcquisitionStop (); TLParamsLocked = 1;
TriggerMode = Off;
TLParamsLocked = 0; AcquisitionStart ();
TLParamsLocked = 1;
AcquisitionStart ();
AcquisitionMode = Continuous;
TriggerSelector = AcquisitionStart;
TriggerMode = On; AcquisitionStop ();
TriggerSource = Line1; TLParamsLocked = 0;
TLParamsLocked = 1;
AcquisitionStart ();
Line1 Trigger
AcquisitionMode = Continuous;
TriggerSelector = FrameStart;
TriggerMode = On; AcquisitionStop ();
TriggerSource = Line1; TLParamsLocked = 0;
TLParamsLocked = 1;
AcquisitionStart ();
Line1 Trigger Line1 Trigger Line1 Trigger
1 2 N
AcquisitionMode = Continuous;
AcquisitionBurstFrameCount = 2;
TriggerSelector = FrameBurstStart;
AcquisitionStop ();
TriggerMode = On;
TLParamsLocked = 0;
TriggerSource = Line1;
TLParamsLocked = 1;
AcquisitionStart ();
Line1 Trigger Line1 Trigger
1 2
AcquisitionStop is received,
For each trigger, 2 Frames are acquired finishing the current Frame.
as soon as available .
AcquisitionMode = MultiFrame;
AcquisitionFrameCount = 2;
TriggerSelector = AcquisitionStart; TLParamsLocked = 1;
AcquisitionStart ();
TriggerMode = Off; AcquisitionStart ();
TLParamsLocked = 1;
AcquisitionStop (); AcquisitionStop ();
AcquisitionStart ();
TLParamsLocked = 0; TLParamsLocked = 0;
AcquisitionStop is received,
2 Frames are acquired as soon as 2 Frames are acquired as soon as finishing the current Frame.
available. available.
Frame 6 is not acquired.
AcquisitionStop is optional. AcquisitionStop is optional.
AcquisitionMode = MultiFrame;
AcquisitionFrameCount = 2;
TriggerSelector = AcquisitionStart;
TriggerMode = On; AcquisitionStart ();
TriggerSource = Line1;
TLParamsLocked = 1;
TLParamsLocked = 0;
AcquisitionStart ();
Line1 Trigger Line1 Trigger
1 2
AcquisitionStop is optional.
AcquisitionMode = MultiFrame;
AcquisitionFrameCount = 2;
TriggerSelector = FrameStart;
TriggerMode = On; AcquisitionStart ();
TriggerSource = Line1; TLParamsLocked
TLParamsLocked = 1; = 0;
AcquisitionStart ();
Line1 Trigger Line1 Trigger Line1 Trigger Line1 Trigger
1 2 3 4
AcquisitionStop is optional.
AcquisitionMode = MultiFrame;
AcquisitionFrameCount = 3;
AcquisitionFrameBurstCount = 2;
TriggerSelector = FrameBurstStart;
TriggerMode = On; TLParamsLocked = 0;
TriggerSource = Line1;
TLParamsLocked = 1;
AcquisitionStart ();
Line1 Trigger Line1 Trigger
1 2
TLParamsLocked = 0;
AcquisitionMode = SingleFrame;
TriggerSelector = AcquisitionStart;
AcquisitionStop (); TLParamsLocked = 1; TLParamsLocked = 1;
TriggerMode = Off;
TLParamsLocked = 0; AcquisitionStart (); AcquisitionStart ();
TLParamsLocked = 1;
AcquisitionStart (); AcquisitionStop ();
TLParamsLocked = 0;
Frame 1 Frame 2
AcqusitionStop is
received before a Frame
AcquisitionStop is optional. is available. The device
TLParamsLocked = 0 is 1 Frame is acquired as soon as needs to stop as soon as
1 Frame is acquired as soon as available. possible on a frame
optional if no locked
available. boundary. Therefore it is
features are changed before AcquisitionStop is optional. possible that no frame is
the next AcquisitionStart acquired.
AcquisitionMode = SingleFrame;
TriggerSelector = AcquisitionStart;
TriggerMode = On; AcquisitionStop ();
AcquisitionStart (); AcquisitionStart ();
TriggerSource = Line1; TLParamsLocked = 0;
TLParamsLocked = 1;
AcquisitionStart ();
Line1 Trigger Line1 Trigger Line1 Trigger
1 2 3
AcquisitionStop is optional.
AcquisitionMode = SingleFrame;
TriggerSelector = FrameStart;
TriggerMode = On; AcquisitionStop ();
AcquisitionStart (); AcquisitionStart ();
TriggerSource = Line1; TLParamsLocked = 0;
TLParamsLocked = 1;
AcquisitionStart ();
Line1 Trigger Line1 Trigger Line1 Trigger
1 2 3
AcquisitionStop is optional.
This section gives the detailed description of all the Acquisition related features.
5.4.1 AcquisitionControl
Name AcquisitionControl
Category Root
Level Recommended
Interface ICategory
Access Read
Unit -
Visibility Beginner
Values -
5.4.2 AcquisitionMode
Name AcquisitionMode
Category AcquisitionControl
Level Recommended
Interface IEnumeration
Access Read/(Write)
Unit -
Visibility Beginner
Values SingleFrame
MultiFrame
Continuous
Sets the acquisition mode of the device. It defines mainly the number of frames to capture during
an acquisition and the way the acquisition stops.
Possible values are:
• SingleFrame: One frame is captured.
5.4.3 AcquisitionStart
Name AcquisitionStart
Category AcquisitionControl
Level Recommended
Interface ICommand
Access (Read)/Write
Unit -
Visibility Beginner
Values -
Starts the Acquisition of the device. The number of frames captured is specified by
AcquisitionMode.
The Acquisition might be conditioned by various triggers (see Trigger… features). An
AcquisitionStart command must be sent to the device before the acquisition related triggers
become effective.
Note that unless the AcquisitionArm was executed since the last feature change, the
AcquisitionStart command must validate all the current features for consistency before starting
the Acquisition. This validation will not be repeated for the subsequent acquisitions unless a
feature is changed in the device.
If the AcquisitionStart feature is currently not writable (locked), the application must not start the
acquisition and must avoid using the feature until the feature becomes writable again.
This feature is generaly mandatory for transmitters and transceivers of most Transport Layers.
5.4.4 AcquisitionStop
Name AcquisitionStop
Category AcquisitionControl
Level Recommended
Interface ICommand
Access (Read)/Write
Unit -
Visibility Beginner
Values -
Stops the Acquisition of the device at the end of the current Frame. It is mainly used when
AcquisitionMode is Continuous but can be used in any acquisition mode.
If the camera is waiting for a trigger, the pending Frame will be cancelled. If no Acquisition is in
progress, the command is ignored.
This feature is generaly mandatory for transmitters and transceivers of most Transport Layers.
5.4.5 AcquisitionAbort
Name AcquisitionAbort
Category AcquisitionControl
Level Recommended
Interface ICommand
Access (Read)/Write
Unit -
Visibility Expert
Values -
Aborts the Acquisition immediately. This will end the capture without completing the current
Frame or waiting on a trigger. If no Acquisition is in progress, the command is ignored.
5.4.6 AcquisitionArm
Name AcquisitionArm
Category AcquisitionControl
Level Optional
Interface ICommand
Access (Read)/Write
Unit -
Visibility Expert
Values -
Arms the device before an AcquisitionStart command. This optional command validates all the
current features for consistency and prepares the device for a fast start of the Acquisition.
If not used explicitly, this command will be automatically executed at the first AcquisitionStart
but will not be repeated for the subsequent ones unless a feature is changed in the device.
5.4.7 AcquisitionFrameCount
Name AcquisitionFrameCount
Category AcquisitionControl
Level Recommended
Interface IInteger
Access Read/Write
Unit -
Visibility Beginner
Values ≥1
5.4.8 AcquisitionBurstFrameCount
Name AcquisitionBurstFrameCount
Category AcquisitionControl
Level Optional
Interface IInteger
Access Read/Write
Unit -
Visibility Beginner
Values ≥1
5.4.9 AcquisitionFrameRate
Name AcquisitionFrameRate
Category AcquisitionControl
Level Recommended
Interface IFloat
Access Read/Write
Unit Hz
Visibility Beginner
Values Device-specific
Controls the acquisition rate (in Hertz) at which the frames are captured.
TriggerMode must be Off for the Frame trigger.
5.4.10 AcquisitionLineRate
Name AcquisitionLineRate
Category AcquisitionControl
Level Recommended
Interface IFloat
Access Read/Write
Unit Hz
Visibility Beginner
Values Device-specific
Controls the rate (in Hertz) at which the Lines in a Frame are captured.
TriggerMode must be Off for the Line trigger.
This is generally useful for line scan camera only.
5.4.11 AcquisitionStatusSelector
Name AcquisitionStatusSelector
Category AcquisitionControl
Level Recommended
Interface IEnumeration
Access Read/Write
Unit -
Visibility Expert
Values AcquisitionTriggerWait
AcquisitionActive
AcquisitionTransfer
FrameTriggerWait
FrameActive
ExposureActive
FrameTransfer (deprecated)
5.4.12 AcquisitionStatus
Name AcquisitionStatus[AcquisitionStatusSelector]
Category AcquisitionControl
Level Recommended
Interface IBoolean
Access Read
Unit -
Visibility Expert
Values True
False
Reads the state of the internal acquisition signal selected using AcquisitionStatusSelector.
The Trigger Control section describes all features related to image acquisition using trigger(s).
One or many Trigger(s) can be used to control the start of an Acquisition (Figure 5-1), of a
Burst of Frames (Figure 5-2), of individual Frames (Figure 5-3) or of each Line of a Frame for
a line scan device (Figure 5-4). Triggers can also be used to control the exposure duration at the
beginning of a frame.
TriggerSelector is used to select which type of trigger to configure. The standard trigger types
are: AcquisitionStart, AcquisitionEnd, AcquisitionActive, FrameBurstStart,
FrameBurstEnd, FrameBurstActive, FrameStart, FrameEnd, FrameActive, LineStart,
ExposureStart, ExposureEnd and ExposureActive.
TriggerMode activate/desactivate trigger operation. It can be On or Off.
TriggerSource specifies the physical input Line or internal signal to use for the selected trigger.
Standard trigger sources are: Software, Line0, Line1, …, Counter0Start, Counter0End, …,
Timer0Start, Timer0End, , …, UserOutput0, UserOutput1, …, Action0, Action1, …
With a Software trigger source, the TriggerSoftware command can be used by an application to
generate an internal trigger signal.
With the hardware trigger sources, TriggerActivation specifies the activation mode of the
trigger. This can be a RisingEdge, FallingEdge, AnyEdge, LevelHigh or LevelLow.
TriggerOverlap specifies the type of trigger overlap permitted with the previous frame. This
defines when a valid trigger will be accepted (or latched) for a new frame. This can be Off for no
overlap, ReadOut to accept a trigger immediately after the exposure period or PreviousFrame to
accept (latch) a trigger that happened at any time after the start of the previous frame.
TriggerDelay specifies the delay to apply after the trigger signal reception before effectively
activating it.
TriggerDivider and TriggerMultiplier are used to control the ratio of triggers that are accepted.
Note that, a trigger is considered valid after the Dividers, Multipliers, Delay, ...
For example to setup a hardware triggered acquisition that will start the capture of each frame on
the rising edge of the signal coming from the physical input Line 1, the following pseudo-code
can be used:
Camera.TriggerSelector = FrameStart;
Camera.TriggerMode = On;
Camera.TriggerActivation = RisingEdge;
Camera.TriggerSource = Line1;
See also the Acquisition and Trigger Examples for more complete use cases of the acquisition
and trigger features in conjunction with other related sections such as I/O.
The drawing below shows the functional model of the trigger generation in SFNC.
It shows the order and the stages that an input signal received on an external line may pass to
become a valid trigger (Ex: a FrameTrigger).
Note that the signal received on an external line or generated from an internal circuit is
considered a valid trigger for the Acquisition section only after passing all those stages (if they re
implemented).
5.5.1 TriggerSelector
Name TriggerSelector
Category AcquisitionControl
Level Recommended
Interface IEnumeration
Access Read/Write
Unit -
Visibility Beginner
Values AcquisitionStart
AcquisitionEnd
AcquisitionActive
FrameStart
FrameEnd
FrameActive
FrameBurstStart
FrameBurstEnd
FrameBurstActive
LineStart
ExposureStart
ExposureEnd
ExposureActive
• ExposureStart: Selects a trigger controlling the start of the exposure of one Frame (or
Line).
• ExposureEnd: Selects a trigger controlling the end of the exposure of one Frame (or
Line).
• ExposureActive: Selects a trigger controlling the duration of the exposure of one frame
(or Line).
5.5.2 TriggerMode
Name TriggerMode[TriggerSelector]
Category AcquisitionControl
Level Recommended
Interface IEnumeration
Access Read/Write
Unit -
Visibility Beginner
Values Off
On
5.5.3 TriggerSoftware
Name TriggerSoftware[TriggerSelector]
Category AcquisitionControl
Level Recommended
Interface ICommand
Access (Read)/Write
Unit -
Visibility Beginner
Values -
5.5.4 TriggerSource
Name TriggerSource[TriggerSelector]
Category AcquisitionControl
Level Recommended
Interface IEnumeration
Access Read/Write
Unit -
Visibility Beginner
Values Software
Line0 (If 0 based), Line1, Line2,
…
Counter0Start (If 0 based),
Counter1Start, Counter2Start, …
Counter0End (If 0 based),
Counter1End, Counter2End, …
Timer0Start (If 0 based),
Timer1Start, Timer2Start, …
Timer0End (If 0 based),
Timer1End, Timer2End, …
UserOutput0, UserOutput1,
UserOutput2, ...
Action0 (If 0 based), Action1,
Action2, …
CC1, CC2, CC3, CC4,
…
Specifies the internal signal or physical input Line to use as the trigger source. The selected
trigger must have its TriggerMode set to On.
Possible values are:
• Software: Specifies that the trigger source will be generated by software using the
TriggerSoftware command.
• Line0 , Line1, Line2, …: Specifies which physical line (or pin) and associated I/O
control block to use as external source for the trigger signal.
5.5.5 TriggerActivation
Name TriggerActivation[TriggerSelector]
Category AcquisitionControl
Level Recommended
Interface IEnumeration
Access Read/Write
Unit -
Visibility Beginner
Values RisingEdge
FallingEdge
AnyEdge
LevelHigh
LevelLow
• LevelHigh: Specifies that the trigger is considered valid as long as the level of the source
signal is high.
• LevelLow: Specifies that the trigger is considered valid as long as the level of the source
signal is low.
5.5.6 TriggerOverlap
Name TriggerOverlap[TriggerSelector]
Category AcquisitionControl
Level Recommended
Interface IEnumeration
Access Read/Write
Unit -
Visibility Expert
Values Off
ReadOut
PreviousFrame
Specifies the type trigger overlap permitted with the previous frame. This defines when a valid
trigger will be accepted (or latched) for a new frame.
Possible values are:
• Off: No trigger overlap is permitted.
• ReadOut: Trigger is accepted immediately after the exposure period.
• PreviousFrame: Trigger is accepted (latched) at any time during the capture of the
previous frame.
5.5.7 TriggerDelay
Name TriggerDelay[TriggerSelector]
Category AcquisitionControl
Level Recommended
Interface IFloat
Access Read/Write
Unit us
Visibility Expert
Values Device-specific
Specifies the delay in microseconds (us) to apply after the trigger reception before activating it.
5.5.8 TriggerDivider
Name TriggerDivider[TriggerSelector]
Category AcquisitionControl
Level Recommended
Interface IInteger
Access Read/Write
Unit -
Visibility Expert
Values Device-specific
5.5.9 TriggerMultiplier
Name TriggerMultiplier[TriggerSelector]
Category AcquisitionControl
Level Recommended
Interface IInteger
Access Read/Write
Unit -
Visibility Expert
Values Device-specific
Specifies a multiplication factor for the incoming trigger pulses. It is used generally used in
conjunction with TriggerDivider to control the ratio of triggers that are accepted.
The Exposure Control section describes all features related to the exposure of the photosensitive
cells (shutter control) during image acquisition.
The Exposure of the photosensitive cells during Frame or Line acquisition can be in 3 differents
modes.
• ExposureMode can be Off to disable the Shutter and let it open.
• ExposureMode can be Timed to have a timed exposure and allow programming the
duration using the ExposureTime or ExposureAuto features.
For example to have a fixed exposure time of 1 milisecond, use the following pseudo
code:
Camera.ExposureMode = Timed;
Camera.ExposureTime = 1000;
• ExposureMode can be TriggerWidth to use the width of the current Frame or Line
trigger signal(s) to control exposure duration.
• ExposureMode can be TriggerControlled to use one or more trigger signal(s) to control
the exposure duration independently from the current Frame or Line triggers (See
ExposureStart, ExposureEnd and ExposureActive of the TriggerSelector feature).
For example: To use 2 hardware triggers respectively starting and stopping the Exposure,
use the following pseudo code:
Camera.ExposureMode = TriggerControlled;
Camera.TriggerSelector = ExposureStart;
Camera.TriggerMode = On;
Camera.TriggerSource = Line1;
Camera.TriggerSelector = ExposureEnd;
Camera.TriggerMode = On;
Camera.TriggerSource = Line2;
5.6.1 ExposureMode
Name ExposureMode
Category AcquisitionControl
Level Recommended
Interface IEnumeration
Access Read/Write
Unit -
Visibility Beginner
Values Off
Timed
TriggerWidth
TriggerControlled
Then the Exposure will be controlled using the ExposureTime Feature, even if the following
code is done:
TriggerSelector = ExposureActive;
TriggerMode = On;
TriggerActivation = LevelHigh;
TriggerSource = Line1;
The Exposure duration will become controlled by the length of the positive pulse on physical
Line 1.
5.6.2 ExposureTime
Name ExposureTime
Category AcquisitionControl
Level Recommended
Interface IFloat
Access Read/Write
Unit us
Visibility Beginner
Values ≥0
Sets the Exposure time when ExposureMode is Timed and ExposureAuto is Off. This controls
the duration where the photosensitive cells are exposed to light.
5.6.3 ExposureAuto
Name ExposureAuto
Category AcquisitionControl
Level Optional
Interface IEnumeration
Access Read/Write
Unit -
Visibility Beginner
Values Off
Once
Continuous
Device-specific
Sets the automatic exposure mode when ExposureMode is Timed. The exact algorithm used to
implement this control is device-specific.
Some other device-specific features might be used to allow the selection of the algorithm.
Possible values are:
• Off: Exposure duration is user controlled using ExposureTime.
• Once: Exposure duration is adapted once by the device. Once it has converged, it returns
to the Off state.
• Continuous: Exposure duration is constantly adapted by the device to maximize the
dynamic range.
On top of the previous standard values, a device might also provide device-specific values.
LineInverter control
Tri- Output
State inverter
ExposureActive signal
Line
LineMode control TimerActive signal
Output
Mux UserOutput1 signal
UserOutput2 signal
…
LineSource control
I/O Lines:
For a Digital I/O, when the full I/O Control Block is implemented, each physical Line (or pin)
selected using LineSelector can be configured as Input or Output using LineMode. For an input
or output Line, it is possible to read the Status of the Line with LineStatus and the incoming or
outgoing signal can also be inverted using LineInverter. For an Output signal, the source of the
signal is controlled using LineSource (See Figure 6-1).
For example, to output an inverted pulse coming from the Timer 1 on the physical Line 2 of the
device connector, use the following code:
LineSelector = Line2;
LineMode = Output;
LineInverter = True;
LineSource = Timer1Active;
Note that all the features of an I/O control block are optional. Typically, an Input only line will
report the LineMode as Input (read-only) and will implement only the LineSelector,
LineInverter and LineStatus features (top half in Figure 6-1). An Output only line will report
the LineMode as Output (read-only) and will implement only the LineSelector, LineInverter
and LineSource features (bottom half of
Figure 6-1). Even a hard-wired input or output line is just particular case where all the features
are read-only.
The electrical format of the physical Line (TTL. LVDS, Opto-Coupled…) can be read or
controlled (if supported) using LineFormat.
Note also that the Status of all the Lines can be monitored in one single access using
LineStatusAll.
UserOutput:
One possible source for Output lines is the User Output bit register.
Using LineSource, each of the bits of the User Output register can be directed to a physical
output Line after going trough the I/O control block (See Figure 6-1).
UserOutputSelector and UserOutputValue are used to set any individual bit of the User Output
register. UserOutputValueAll and UserOutputValueAllMask can be used to set all or many of
the User Output bits in one access.
See the I/O Examples section for more complete use cases of the I/O usage.
6.1 DigitalIOControl
Name DigitalIOControl
Category Root
Level Recommended
Interface ICategory
Access Read
Unit -
Visibility Expert
Values -
Category that contains the digital input and output control features.
6.2 LineSelector
Name LineSelector
Category DigitalIOControl
Level Recommended
Interface IEnumeration
Access Read/Write
Unit -
Visibility Expert
Values Line0 (If 0 based), Line1, Line2,
…
CC1, CC2, CC3, CC4,
…
Selects the physical line (or pin) of the external device connector to configure.
When a Line is selected, all the other Line features will be applied to its associated I/O control
block and will condition the resulting input or output signal.
Possible values are:
• Line0 (If 0 based), Line1, Line2, ...: Index of the physical line and associated I/O control
block to use.
• CC1, CC2, CC3, CC4: Index of the Camera Link physical line and associated I/O control
block to use. This ensures a direct mapping between the lines on the frame grabber and
on the camera. Applicable to CameraLink Product only.
6.3 LineMode
Name LineMode[LineSelector]
Category DigitalIOControl
Level Optional
Interface IEnumeration
Access Read/Write
Unit -
Visibility Expert
Values Input
Output
6.4 LineInverter
Name LineInverter[LineSelector]
Category DigitalIOControl
Level Recommended
Interface IBoolean
Access Read/Write
Unit -
Visibility Expert
Values False
True
Controls the inversion of the signal of the selected input or output Line.
Possible values are:
• False: The Line signal is not inverted.
6.5 LineStatus
Name LineStatus[LineSelector]
Category DigitalIOControl
Level Recommended
Interface IBoolean
Access Read
Unit -
Visibility Expert
Values False
True
6.6 LineStatusAll
Name LineStatusAll
Category DigitalIOControl
Level Optional
Interface IInteger
Access Read
Unit -
Visibility Expert
Values Device-specific
Returns the current status of all available Line signals at time of polling in a single bitfield.
The order is Line0 (If 0 based), Line1, Line2,...
6.7 LineSource
Name LineSource[LineSelector]
Category DigitalIOControl
Level Recommended
Interface IEnumeration
Access Read/Write
Unit -
Visibility Expert
Values Off
AcquisitionTriggerWait
AcquisitionActive
FrameTriggerWait
FrameActive
ExposureActive
Stream0TransferActive,
Stream1TransferActive, …
Stream0TransferPaused,
Stream1TransferPaused, …
Stream0TransferStopping,
Stream1TransferStopping, …
Stream0TransferStopped,
Stream1TransferStopped, …
Stream0TransferOverflow
Stream1TransferOverflow, ...
Counter0Active,
Counter1Active,
Counter2Active, …
Timer0Active,
Timer1Active,
Timer2Active, …
UserOutput0,
UserOutput1,
UserOutput2, …
Selects which internal acquisition or I/O source signal to output on the selected Line. LineMode
must be Output.
See Figure 6-1 for details.
Possible values are:
6.8 LineFormat
Name LineFormat[LineSelector]
Category DigitalIOControl
Level Optional
Interface IEnumeration
Access Read/Write
Unit -
Visibility Expert
Values NoConnect
TriState
TTL
LVDS
RS422
2012-10-25 Page 156 of 366
Version 2.0 Standard Features Naming Convention
OptoCoupled
Controls the current electrical format of the selected physical input or output Line.
Possible values are:
• NoConnect: The Line is not connected.
• TriState: The Line is currently in Tri-State mode (Not driven).
• TTL: The Line is currently accepting or sending TTL level signals.
• LVDS: The Line is currently accepting or sending LVDS level signals.
• RS422: The Line is currently accepting or sending RS422 level signals.
• OptoCoupled: The Line is opto-coupled.
6.9 UserOutputSelector
Name UserOutputSelector
Category DigitalIOControl
Level Recommended
Interface IEnumeration
Access Read/Write
Unit -
Visibility Expert
Values UserOutput0, UserOutput1,
UserOutput2, …
Selects which bit of the User Output register will be set by UserOutputValue.
Possible values are:
• UserOutput0: Selects the bit 0 of the User Output register.
• UserOutput1: Selects the bit 1 of the User Output register.
• UserOutput2: Selects the bit 2 of the User Output register.
• …
6.10 UserOutputValue
Name UserOutputValue[UserOutputSelector]
Category DigitalIOControl
Level Recommended
Interface IBoolean
Access Read/Write
Unit -
Visibility Expert
Values True
False
6.11 UserOutputValueAll
Name UserOutputValueAll
Category DigitalIOControl
Level Optional
Interface IInteger
Access Read/Write
Unit -
Visibility Expert
Values Device-specific
Sets the value of all the bits of the User Output register. It is subject to the
UserOutputValueAllMask.
UserOutputValueAll can take any binary value and each bit set to one will set the corresponding
User Output register bit to high. Note that the UserOutputs are numbered from 0 to N (If 0
based). This means that the least significant bit of UserOutputValueAll corresponds to the
UserOutput0 (if 0 based).
6.12 UserOutputValueAllMask
Name UserOutputValueAllMask
Category DigitalIOControl
Level Optional
Interface IInteger
Access Read/Write
Unit -
Visibility Expert
Values Device-specific
Sets the write mask to apply to the value specified by UserOutputValueAll before writing it in
the User Output register. If the UserOutputValueAllMask feature is present, setting the user
Output register using UserOutputValueAll will only change the bits that have a corresponding
bit in the mask set to one.
UserOutputValueAllMask can take any binary value. Each bit set to one will enable writing of
the corresponding User Output register bit and each bit set to zero will prevent it.
Note that UserOutputValueAllMask is ignored when an individual bit is set using
UserOutputValue.
TimerSelector = Timer1;
TimerDuration = 300;
TimerTriggerActivation = RisingEdge;
TimerTriggerSource = Line2;
To set the destination output Line of the Timer pulse, see for example Timer1Active entry of the
LineSource feature.
Note that Counters and Timers can also be used to generate an Event when a predetermined
maximum count (or duration) is reached. See the EventSelector feature.
See the Counter and Timer Examples section for more complete use cases of the counters and
timers usage.
7.1 CounterAndTimerControl
Name CounterAndTimerControl
Category Root
Level Recommended
Interface ICategory
Access Read
Unit -
Visibility Expert
Values -
7.2 CounterSelector
Name CounterSelector
Category CounterAndTimerControl
Level Recommended
Interface IEnumeration
Access Read/Write
Unit -
Visibility Expert
Values Counter0 (If 0 based),
Counter1,
Counter2,
…
7.3 CounterEventSource
Name CounterEventSource[CounterSelector]
Category CounterAndTimerControl
Level Recommended
Interface IEnumeration
Access Read/Write
Unit -
Visibility Expert
Values Off
AcquisitionTrigger
AcquisitionStart
AcquisitionEnd
FrameTrigger
FrameStart
2012-10-25 Page 161 of 366
Version 2.0 Standard Features Naming Convention
FrameEnd
FrameBurstStart
FrameBurstEnd
LineStart
LineEnd
ExposureStart
ExposureEnd
Line0 (If 0 based), Line1, Line2, …
Counter0End (If 0 based),
Counter1End, Counter2End, …
Timer0End (If 0 based), Timer1End,
Timer2End, …
TimestampTick,
Action0 (If 0 based), Action1,
Action2, …
Select the events that will be the source to increment the Counter.
See Figure 5-1, Figure 5-3 and Figure 5-4 for details.
Possible values are:
• Off: Counter is stopped.
• AcquisitionTrigger: Counts the number of Acquisition Trigger.
• AcquisitionStart: Counts the number of Acquisition Start.
• AcquisitionEnd: Counts the number of Acquisition End.
• FrameTrigger: Counts the number of Frame Start Trigger.
• FrameStart: Counts the number of Frame Start.
• FrameEnd: Counts the number of Frame End.
• FrameBurstStart: Counts the number of Frame Burst Start.
• FrameBurstEnd: Counts the number of Frame Burst End.
• LineStart: Counts the number of Line Start.
• LineEnd: Counts the number of Line End.
• ExposureStart: Counts the number of Exposure Start.
• ExposureEnd: Counts the number of Exposure End.
• Line0, Line1, Line2, …: Counts the number of transitions on the chosen I/O Line.
7.4 CounterEventActivation
Name CounterEventActivation[CounterSelector]
Category CounterAndTimerControl
Level Recommended
Interface IEnumeration
Access Read/Write
Unit -
Visibility Expert
Values RisingEdge
FallingEdge
AnyEdge
7.5 CounterResetSource
Name CounterResetSource[CounterSelector]
Category CounterAndTimerControl
Level Recommended
Interface IEnumeration
Access Read/Write
Unit -
2012-10-25 Page 163 of 366
Version 2.0 Standard Features Naming Convention
Visibility Expert
Values Off
CounterTrigger
AcquisitionTrigger
AcquisitionStart
AcquisitionEnd
FrameTrigger
FrameStart
FrameEnd
ExposureStart
ExposureEnd
Line0 (If 0 based), Line1, Line2, …
Counter0End (If 0 based),
Counter1End, Counter2End, …
Timer0End (If 0 based), Timer1End,
Timer2End, …
UserOutput0, UserOutput1,
UserOutput2,…
Action0 (If 0 based), Action1,
Action2, …
Selects the signals that will be the source to reset the Counter.
Possible values are:
• Off: Disable the Counter Reset trigger.
• CounterTrigger: Resets with the reception of a trigger on the CounterTriggerSource.
• AcquisitionTrigger: Resets with the reception of the Acquisition Trigger.
• AcquisitionStart: Resets with the reception of the Acquisition Start.
• AcquisitionEnd: Resets with the reception of the Acquisition End.
• FrameTrigger: Resets with the reception of the Frame Start Trigger.
• FrameStart: Resets with the reception of the Frame Start.
• FrameEnd: Resets with the reception of the Frame End.
• FrameBurstStart: Resets with the reception of the Frame Burst Start.
• FrameBurstEnd: Resets with the reception of the Frame Burst End.
• ExposureStart: Resets with the reception of the Exposure Start.
• ExposureEnd: Resets with the reception of the Exposure End.
• Line0 (If 0 based), Line1, Line2, …: Resets by the chosen I/O Line.
7.6 CounterResetActivation
Name CounterResetActivation[CounterSelector]
Category CounterAndTimerControl
Level Recommended
Interface IEnumeration
Access Read/Write
Unit -
Visibility Expert
Values RisingEdge
FallingEdge
AnyEdge
LevelHigh
LevelLow
7.7 CounterReset
Name CounterReset[CounterSelector]
Category CounterAndTimerControl
Level Recommended
Interface ICommand
Access (Read)/Write
Unit -
Visibility Expert
Values -
Does a software reset of the selected Counter and starts it. The counter starts counting events
immediately after the reset unless a Counter trigger is active. CounterReset can be used to reset
the Counter independently from the CounterResetSource. To disable the counter temporarily, set
CounterEventSource to Off.
Note that the value of the Counter at time of reset is automatically latched and reflected in the
CounterValueAtReset.
7.8 CounterValue
Name CounterValue[CounterSelector]
Category CounterAndTimerControl
Level Recommended
Interface IInteger
Access Read/Write
Unit -
Visibility Expert
Values ≥0
7.9 CounterValueAtReset
Name CounterValueAtReset[CounterSelector]
Category CounterAndTimerControl
Level Recommended
Interface IInteger
Access Read
Unit -
Visibility Expert
Values ≥0
Reads the value of the selected Counter when it was reset by a trigger or by an explicit
CounterReset command.
It represents the last counter value latched before reseting the counter.
7.10 CounterDuration
Name CounterDuration[CounterSelector]
Category CounterAndTimerControl
Level Recommended
Interface IInteger
Access Read/Write
Unit -
Visibility Expert
Values ≥0
Sets the duration (or number of events) before the CounterEnd event is generated.
When the counter reaches the CounterDuration value, a CounterEnd event is generated, the
CounterActive signal becomes inactive and the counter stops counting until a new trigger
happens or it is explicitly reset with CounterReset.
7.11 CounterStatus
Name CounterStatus[CounterSelector]
Category CounterAndTimerControl
Level Recommended
Interface IEnumeration
Access Read
Unit -
Visibility Expert
Values CounterIdle
CounterTriggerWait
CounterActive
2012-10-25 Page 167 of 366
Version 2.0 Standard Features Naming Convention
CounterCompleted
CounterOverflow
7.12 CounterTriggerSource
Name CounterTriggerSource[CounterSelector]
Category CounterAndTimerControl
Level Recommended
Interface IEnumeration
Access Read/Write
Unit -
Visibility Expert
Values Off
AcquisitionTrigger
AcquisitionStart
AcquisitionEnd
FrameTrigger
FrameStart
FrameEnd
FrameBurstStart
FrameBurstEnd
ExposureStart
ExposureEnd
Line0 (If 0 based), Line1, Line2, …
UserOutput0, UserOutput1,
UserOutput2,…
Counter0End (if 0 based), Counter1End,
Counter2End, …
Timer0End (if 0 based), Timer1End,
Timer2End, …
7.13 CounterTriggerActivation
Name CounterTriggerActivation[CounterSelector]
Category CounterAndTimerControl
Level Recommended
Interface IEnumeration
Access Read/Write
Unit -
Visibility Expert
Values RisingEdge
FallingEdge
AnyEdge
LevelHigh
LevelLow
7.14 TimerSelector
Name TimerSelector
Category CounterAndTimerControl
Level Recommended
Interface IEnumeration
Access Read/Write
Unit -
Visibility Expert
Values Timer0 (if 0 based), Timer1,
Timer2, …
7.15 TimerDuration
Name TimerDuration[TimerSelector]
Category CounterAndTimerControl
2012-10-25 Page 170 of 366
Version 2.0 Standard Features Naming Convention
Level Recommended
Interface IFloat
Access Read/Write
Unit us
Visibility Expert
Values ≥0
7.16 TimerDelay
Name TimerDelay[TimerSelector]
Category CounterAndTimerControl
Level Recommended
Interface IFloat
Access Read/Write
Unit us
Visibility Expert
Values ≥0
Sets the duration (in microseconds) of the delay to apply at the reception of a trigger before
starting the Timer.
7.17 TimerReset
Name TimerReset[TimerSelector]
Category CounterAndTimerControl
Level Recommended
Interface ICommand
Access (Read)/Write
Unit -
Visibility Expert
Values -
Does a software reset of the selected timer and starts it. The timer starts counting events
immediately after the reset unless a timer trigger is active.
7.18 TimerValue
Name TimerValue[TimerSelector]
Category CounterAndTimerControl
Level Recommended
Interface IFloat
Access Read/Write
Unit us
Visibility Expert
Values ≥0
Reads or writes the current value (in microseconds) of the selected Timer.
Writing TimerValue is typically used to set the start value.
7.19 TimerStatus
Name TimerStatus[TimerSelector]
Category CounterAndTimerControl
Level Recommended
Interface IEnumeration
Access Read
Unit -
Visibility Expert
Values TimerIdle
TimerTriggerWait
TimerActive
TimerCompleted
7.20 TimerTriggerSource
Name TimerTriggerSource[TimerSelector]
Category CounterAndTimerControl
Level Recommended
Interface IEnumeration
Access Read/Write
Unit -
Visibility Expert
Values Off
AcquisitionTrigger
AcquisitionStart
AcquisitionEnd
FrameTrigger
FrameStart
FrameEnd
FrameBurstStart
FrameBurstEnd
ExposureStart
ExposureEnd
Line0 (If 0 based), Line1, Line2,…
UserOutput0, UserOutput1, UserOutput2,…
Counter0End (If 0 based), Counter1End, Counter2End,
…
Timer0End (If 0 based), Timer1End, Timer2End, …
Action0 (If 0 based), Action1, Action2, …
7.21 TimerTriggerActivation
Name TimerTriggerActivation[TimerSelector]
Category CounterAndTimerControl
Level Recommended
Interface IEnumeration
Access Read/Write
Unit -
Visibility Expert
Values RisingEdge
FallingEdge
AnyEdge
LevelHigh
LevelLow
8 Event Control
This chapter describes how to control the generation of Events to the host application. An Event
is a message that is sent to the host application to notify it of the occurrence of an internal event.
Events are typically used to synchronize the host application with some Events happening in the
device. A typical use in machine vision is a host application that waits to be notified of the CCD
exposure end to move the inspected part on a conveyer belt.
EventSelector selects which particular Event to control. There are 4 typical sources of events:
Acquisition, Timer, Counter and I/O lines.
The standard Acquisition related Events are: AcquisitionTrigger, AcquisitionStart,
AcquisitionEnd, AcquisitionTransferStart, AcquisitionTransferEnd, AcquisitionError,
FrameTrigger, FrameStart, FrameEnd, FrameBurstStart, FrameBurstEnd,
FrameTransferStart, FrameTransferEnd, ExposureStart, ExposureEnd (See Figure 5-1 to
Figure 5-4).
The standard Counters and Timers related Events are: Counter0Start, Counter0End,
Counter1Start, Counter1End, … Timer0Start, Timer0End, Timer1Start, Timer1End, …
The standard I/O line Events are: Line0RisingEdge , Line0FallingEdge, Line0AnyEdge,
Line1RisingEdge, Line1FallingEdge, … Note that the event signal is monitored at the same
place as LineStatus in the I/O control block (See
Figure 6-1). This means that event is checked against the condition after the input inverter.
EventNotification is used to enable or disable the notification of the occurrence of the internal
event selected by EventSelector. If EventNotification is Off, no event of the selected type is
generated.
For each of the events listed in the EventSelector enumeration, there must be a corresponding
feature with a standard name (ex: EventExposureEnd). The controlling application can rely on
this event identifier to register a callback function to be notified that the event happened.
Also for each Event in EventSelector, there should be one category grouping all the related data
members (Ex: EventExposureEndData).
The other data members in that category should also follow the naming convention described
below (Ex: EventExposureEndTimestamp).
Therefore, the naming convention for the Event related features is:
- You must provide an IInteger Event feature that will be used to register the callback and is
named:
Event prefix +"EventName" (Ex: EventExposureEnd).
- You should provide for each optional data member a corresponding feature named:
Event prefix + "EventName"+"DataMember" (Ex: EventExposureEndTimestamp).
ICategory EventExposureEndData
IInteger EventExposureEnd
IInteger EventExposureEndTimeStamp
IInteger EventExposureEndFrameID
…
With the above naming convention, for each Event listed in EventSelector:
- A user always knows the name of the Feature to use to register a call back on that Event.
- The user can take the parent of this feature to find the corresponding Event category.
- In this Event category, the user will find all the features related to this Event.
For example, to do a continuous acquisition and be notified at the end of the exposure period of
each frame to move the part and also get the timestamp, the following pseudo-code can be used:
Camera.EventSelector = ExposureEnd;
Camera.EventNotification = On;
Camera.AcquisitionMode = Continuous;
Camera.AcquisitionStart();
…
// In the callback of the ExposureEnd event, gets the event timestamp:
Timestamp = Camera.EventExposureEndTimestamp;
…
Camera.AcquisitionStop();
For simplicity, all the categories and their data members are not listed explicitly in that document
but a precise naming convention for the categories and their member is provided above instead.
Below, the detailled features for the members of the EventSelector are only listed for 3 typically
recommended events: FrameTrigger, ExposureEnd and Error.
All the other members of the EventSelector feature should follow the exact same pattern for their
features naming and category if they are present in a device.
See the Acquisition and Trigger Examples section for more complete use cases of the Events
usage.
8.1 EventControl
Name EventControl
Category Root
Level Recommended
Interface ICategory
Access Read
Unit -
2012-10-25 Page 178 of 366
Version 2.0 Standard Features Naming Convention
Visibility Expert
Values -
8.2 EventSelector
Name EventSelector
Category EventControl
Level Recommended
Interface IEnumeration
Access Read/Write
Unit -
Visibility Expert
Values AcquisitionTrigger
AcquisitionStart
AcquisitionEnd
AcquisitionTransferStart
AcquisitionTransferEnd
AcquisitionError
FrameTrigger
FrameStart
FrameEnd
FrameBurstStart
FrameBurstEnd
FrameTransferStart
FrameTransferEnd
ExposureStart
ExposureEnd
Stream0TransferStart
Stream0TransferEnd
Stream0TransferPause
Stream0TransferResume
Stream0TransferBlockStart
Stream0TransferBlockEnd
Stream0TransferBlockTrigger
Stream0TransferBurstStart
Stream0TransferBurstEnd
Stream0TransferOverflow
Counter0Start (If 0 based), Counter1Start, …
Counter0End (If 0 based), …, Counter1End,
2012-10-25 Page 179 of 366
Version 2.0 Standard Features Naming Convention
…
Timer0Start (If 0 based), Timer1Start, …
Timer0End (If 0 based), Timer1End, …
Line0RisingEdge (If 0 based),
Line1RisingEdge, …
Line0FallingEdge (If 0 based),
Line1FallingEdge, …
Line0AnyEdge (If 0 based),
Line1AnyEdge, …
ActionLate
LinkSpeedChange
Error
Device-specific
- GigE Vision Specific:
PrimaryApplicationSwitch
• ExposureStart: Device just started the exposure of one Frame (or Line).
• ExposureEnd: Device just completed the exposure of one Frame (or Line).
• Stream0TransferStart: Device just started the transfer of one or many Blocks.
• Stream0TransferEnd: Device just completed the transfer of one or many Blocks.
• Stream0TransferPause: Device just paused the transfer.
• Stream0TransferResume: Device just resumed the transfer.
• Stream0TransferBlockStart: Device just started the transfer of one Block.
• Stream0TransferBlockEnd: Device just completed the transfer of one Block.
• Stream0TransferBlockTrigger: Device just received a trigger to start the transfer of one
Block.
• Stream0TransferBurstStart: Device just started the transfer of a burst of Blocks.
• Stream0TransferBurstEnd: Device just completed the transfer of a burst of Blocks.
• Stream0TransferOverflow: Device transfer queue overflowed.
• Counter0Start: The event will be generated when counter 0 starts counting.
• Counter0End: The event will be generated when counter 0 ends counting.
• Counter1Start: The event will be generated when counter 1 starts counting.
• Counter1End: The event will be generated when counter 1 ends counting.
• Timer0Start: The event will be generated when Timer 0 starts counting.
• Timer0End: The event will be generated when Timer 0 ends counting.
• Timer1Start: The event will be generated when Timer 1 starts counting.
• Timer1End: The event will be generated when Timer 1 ends counting.
• Line0RisingEdge: The event will be generated when a Rising Edge is detected on the
Line 0.
• Line1RisingEdge: The event will be generated when a Rising Edge is detected on the
Line 1.
• Line0FallingEdge: The event will be generated when a Falling Edge is detected on the
Line 0.
• Line1FallingEdge: The event will be generated when a Falling Edge is detected on the
Line 1.
• Line0AnyEdge: The event will be generated when a Falling or Rising Edge is detected on
the Line 0
• Line1AnyEdge: The event will be generated when a Falling or Rising Edge is detected on
the Line 1.
• ActionLate: Then event will be generated when a valid scheduled action command is
received and is scheduled to be executed at a time that is already past.
• LinkSpeedChange: Then event will be generated when the link speed has changed.
• PrimaryApplicationSwitch: Then event will be generated when a primary application
switchover has been granted.
• Error: The event will be generated when the device encounter an error.
• …
8.3 EventNotification
Name EventNotification[EventSelector]
Category EventControl
Level Recommended
Interface IEnumeration
Access Read/Write
Unit -
Visibility Expert
Values Off
On
Activate or deactivate the notification to the host application of the occurrence of the selected
Event.
Possible values are:
• Off: The selected Event notification is disabled.
• On: The selected Event notification is enabled.
Below the recommended features for the Frame Trigger Event handling.
8.4.1 EventFrameTriggerData
Name EventFrameTriggerData
Category EventControl
Level Recommended
Interface ICategory
Access Read
Unit -
Visibility Expert
Values -
Category that contains all the data features related to the FrameTrigger Event.
8.4.2 EventFrameTrigger
Name EventFrameTrigger
Category EventFrameTriggerData
Level Recommended
Interface IInteger
Access Read
Unit -
Visibility Expert
Values -
Returns the unique Identifier of the FrameTrigger type of Event. It can be used to register a
callback function to be notified of the event occurrence. Its value uniquely identifies the type
event received.
8.4.3 EventFrameTriggerTimestamp
Name EventFrameTriggerTimestamp
Category EventFrameTriggerData
Level Recommended
Interface IInteger
Access Read
Unit -
Visibility Expert
Values -
Returns the Timestamp of the AcquisitionTrigger Event. It can be used to determine precisely
when the event occured.
8.4.4 EventFrameTriggerFrameID
Name EventFrameTriggerFrameID
Category EventFrameTriggerData
Level Recommended
Interface IInteger
Access Read
Unit -
Visibility Expert
Values -
Returns the unique Identifier of the Frame (or image) that generated the FrameTrigger Event.
Below the recommended features for the Exposure End Event handling.
8.5.1 EventExposureEndData
Name EventExposureEndData
Category EventControl
Level Recommended
Interface ICategory
Access Read
Unit -
Visibility Expert
Values -
Category that contains all the data features related to the ExposureEnd Event.
8.5.2 EventExposureEnd
Name EventExposureEnd
Category EventExposureEndData
Level Recommended
Interface IInteger
Access Read
Unit -
Visibility Expert
Values -
Returns the unique identifier of the ExposureEnd type of Event. This feature can be used to
register a callback function to be notified of the event occurrence. Its value uniquely identifies the
type of event that will be received.
8.5.3 EventExposureEndTimestamp
Name EventExposureEndTimestamp
Category EventExposureEndData
Level Recommended
Interface IInteger
Access Read
Unit -
Visibility Expert
Values -
Returns the Timestamp of the ExposureEnd Event. It can be used to determine precisely when the
event occured.
8.5.4 EventExposureEndFrameID
Name EventExposureEndFrameID
2012-10-25 Page 185 of 366
Version 2.0 Standard Features Naming Convention
Category EventExposureEndData
Level Recommended
Interface IInteger
Access Read
Unit -
Visibility Expert
Values -
Returns the unique Identifier of the Frame (or image) that generated the ExposureEnd Event.
8.6.1 EventErrorData
Name EventErrorData
Category EventControl
Level Recommended
Interface ICategory
Access Read
Unit -
Visibility Expert
Values -
Category that contains all the data features related to the Error Event.
8.6.2 EventError
Name EventError
Category EventErrorData
Level Recommended
Interface IInteger
Access Read
Unit -
Visibility Expert
Values -
Returns the unique identifier of the Error type of Event. It can be used to register a callback
function to be notified of the Error event occurrence. Its value uniquely identifies that the event
received was an Error.
8.6.3 EventErrorTimestamp
Name EventErrorTimestamp
Category EventErrorData
Level Recommended
Interface IInteger
Access Read
Unit -
Visibility Expert
Values -
Returns the Timestamp of the Error Event. It can be used to determine when the event occured.
8.6.4 EventErrorFrameID
Name EventErrorFrameID
Category EventErrorData
Level Recommended
Interface IInteger
Access Read
Unit -
Visibility Expert
Values -
If applicable, returns the unique Identifier of the Frame (or image) that generated the Error Event.
8.6.5 EventErrorCode
Name EventErrorCode
Category EventErrorData
Level Recommended
Interface IInteger
Access Read
Unit -
Visibility Expert
Values -
9 Analog Control
Features in this chapter describes how to influence the analog features of an image, such as gain,
black level, white clip and gamma.
The Gain, BlackLevel and Gamma features will transform the original pixel value Y to a new
value Y` according to the following formula:
Y ′ = [(Y + BlackLevel ) ⋅ Gain ]
Gamma
For some color cameras in Raw or RGB mode, the red/blue channel can be white balanced with
respect to the green channel using the Red and blue BalanceRatio gain. For cameras in YUV
mode the U/V channel can be balanced with respect to the Y channel using the U and V
BalanceRatio, according to:
B ' = B ( BlueBalanceRatio ⋅ Gain )
Other color camera controls each color channel gain independently, in which case, the Red,
Green and Blue Gain features can be used for white balancing.
The automatic functions GainAuto, BlackLevelAuto, BalanceWhiteAuto,
GainAutoTapBalance and BlackLevelAutoTapBalance can be used to auto-adjust a device
once or continuously and to turn the function on and off.
Most of the automatic functions have 3 possible values: {Off, Once, Continuous}.
• Off: The automatic adjustement is disabled (ie. User control).
• Once: The automatic adjustement is performed once by the device. The affected features
report the effective values. If necessary, the feature is automatically set to "Off" after the
adjustment.
• Continuous: The automatic adjustement is continuously done by the device. The affected
features report their effective values.
When a device has a specific auto-adjustment capability, it should have a corresponding feature
allowing the necessary enumerations.
9.1 AnalogControl
Name AnalogControl
Category Root
Level Optional
Interface ICategory
Access Read
Unit -
Visibility Beginner
Values -
9.2 GainSelector
Name GainSelector
Category AnalogControl
Level Optional
Interface IEnumeration
Access Read/Write
Unit -
Visibility Beginner
Values All
Red
Green
Blue
Y
U
V
Tap1, Tap2, …
AnalogAll
AnalogRed
AnalogGreen
AnalogBlue
AnalogY
AnalogU
AnalogV
AnalogTap1, AnalogTap2, …
DigitalAll
DigitalRed
DigitalGreen
DigitalBlue
DigitalY
DigitalU
DigitalV
DigitalTap1, DigitalTap2, …
All G
G All
By following this rule, the value read for the All gains remains valid even when the channel/tap
gains are not all equal.
Possible values are:
• All: Gain will be applied to all channels or taps.
• Red: Gain will be applied to the red channel.
• Green: Gain will be applied to the green channel.
• Blue: Gain will be applied to the blue channel.
• Y: Gain will be applied to Y channel.
• U: Gain will be applied to U channel.
• V: Gain will be applied to V channel.
• Tap1: Gain will be applied to Tap 1.
• Tap2: Gain will be applied to Tap 2.
• …
• AnalogAll: Gain will be applied to all analog channels or taps.
• AnalogRed: Gain will be applied to the red analog channel.
• AnalogGreen: Gain will be applied to the green analog channel.
• AnalogBlue: Gain will be applied to the blue analog channel.
• AnalogY: Gain will be applied to Y analog channel.
• AnalogU: Gain will be applied to U analog channel.
• AnalogV: Gain will be applied to V analog channel.
• AnalogTap1: Analog gain will be applied to Tap 1.
9.3 Gain
Name Gain[GainSelector]
Category AnalogControl
Level Optional
Interface IFloat
Access Read/Write
Unit -
Visibility Beginner
Values Device-specific
Controls the selected gain as an absolute physical value. This is an amplification factor applied to
the video signal.
The unit and values of this feature are specific to the device and must be defined in the GenICam
XML device description file.
For color or multi-tap cameras, GainSelector indicates the color channel or tap to control.
9.4 GainAuto
Name GainAuto[GainSelector]
Category AnalogControl
Level Optional
Interface IEnumeration
Access Read/Write
Unit -
Visibility Beginner
Values Off
Once
Continuous
Device-specific
Sets the automatic gain control (AGC) mode. The exact algorithm used to implement AGC is
device-specific.
Some other device-specific features might be used to allow the selection of the algorithm.
Possible values are:
• Off: Gain is User controlled using Gain.
• Once: Gain is automatically adjusted once by the device. Once it has converged, it
automatically returns to the Off state.
• Continuous: Gain is constantly adjusted by the device.
On top of the previous standard values, a device might also provide device-specific values.
9.5 GainAutoBalance
Name GainAutoBalance
Category AnalogControl
Level Optional
Interface IEnumeration
Access Read/Write
Unit -
Visibility Beginner
Values Off
Once
Continuous
Device-specific
Sets the mode for automatic gain balancing between the sensor color channels or taps. The gain
coefficients of each channel or tap are adjusted so they are matched.
Possible values are:
• Off: Gain tap balancing is user controlled using Gain .
• Once: Gain tap balancing is automatically adjusted once by the device. Once it has
converged, it automatically returns to the Off state.
• Continuous: Gain tap balancing is constantly adjusted by the device.
On top of the previous standard values, a device might also provide device-specific values.
9.6 BlackLevelSelector
Name BlackLevelSelector
Category AnalogControl
Level Optional
Interface IEnumeration
Access Read/Write
Unit -
Visibility Expert
Values All
Red
Green
Blue
Y
U
V
Tap1, Tap2, …
Selects which Black Level is controlled by the various Black Level features.
The All Black Level selection is intended to be across all channels or taps, rather than a
convenient way to set all the individual channels or taps black levels in a single step. By
following this rule, the value read for the All black level remains valid even when the channel/tap
black levels are not all equal.
Possible values are:
• All: Black Level will be applied to all channels or taps.
9.7 BlackLevel
Name BlackLevel[BlackLevelSelector]
Category AnalogControl
Level Optional
Interface IFloat
Access Read/Write
Unit -
Visibility Expert
Values Device-specific
Controls the analog black level as an absolute physical value. This represents a DC offset applied
to the video signal.
The unit and values of this feature are specific to the device and must be defined in the GenICam
XML device description file.
For color or multi-tap cameras, BlackLevelSelector indicates which channel access.
9.8 BlackLevelAuto
Name BlackLevelAuto[BlackLevelSelector]
Category AnalogControl
Level Optional
Interface IEnumeration
Access Read/Write
Unit -
Visibility Expert
Values Off
Once
Continuous
Device-specific
Controls the mode for automatic black level adjustment. The exact algorithm used to implement
this adjustment is device-specific.
Some other device-specific features might be used to allow the selection of the algorithm.
Possible values are:
• Off: Analog black level is user controlled using BlackLevel.
• Once: Analog black level is automatically adjusted once by the device. Once it has
converged, it automatically returns to the Off state.
• Continuous: Analog black level is constantly adjusted by the device.
On top of the previous standard values, a device might also provide device-specific values.
9.9 BlackLevelAutoBalance
Name BlackLevelAutoBalance
Category AnalogControl
Level Optional
Interface IEnumeration
Access Read/Write
Unit -
Visibility Expert
Values Off
Once
Continuous
Device-specific
Controls the mode for automatic black level balancing between the sensor color channels or taps.
The black level coefficients of each channel are adjusted so they are matched.
9.10 WhiteClipSelector
Name WhiteClipSelector
Category AnalogControl
Level Optional
Interface IEnumeration
Access Read/Write
Unit -
Visibility Expert
Values All
Red
Green
Blue
Y
U
V
Tap1, Tap2, …
9.11 WhiteClip
Name WhiteClip[WhiteClipSelector]
Category AnalogControl
Level Optional
Interface IFloat
Access Read/Write
Unit -
Visibility Expert
Values Device-specific
Controls the maximal intensity taken by the video signal before being clipped as an absolute
physical value. The video signal will never exceed the white clipping point: it will saturate at that
level.
The unit and values of this feature are specific to the device and must be defined in the GenICam
XML device description file.
For color or multi-tap cameras, WhiteClipTapSelector indicates the channel to control.
9.12 BalanceRatioSelector
Name BalanceRatioSelector
Category AnalogControl
Level Optional
Interface IEnumeration
Access Read/Write
Unit -
Visibility Expert
Values Red
Green
Blue
2012-10-25 Page 199 of 366
Version 2.0 Standard Features Naming Convention
Y
U
V
Tap1, Tap2, …
9.13 BalanceRatio
Name BalanceRatio[BalanceRatioSelector]
Category AnalogControl
Level Optional
Interface IFloat
Access Read/Write
Unit -
Visibility Expert
Values >0.0
Controls ratio of the selected color component to a reference color component. It is used for
white balancing.
For example, the Color balance is realized by the following formula:
Cw = BalanceRatio x C
where
Cw is the intensity of selected color component after white balancing.
BalanceRatio is the white balance coefficient.
C is the intensity of the color component before white balancing.
9.14 BalanceWhiteAuto
Name BalanceWhiteAuto
Category AnalogControl
Level Optional
Interface IEnumeration
Access Read/Write
Unit -
Visibility Expert
Values Off
Once
Continuous
Device-specific
Controls the mode for automatic white balancing between the color channels. The white
balancing ratios are automatically adjusted.
Possible values are:
• Off: White balancing is user controlled using BalanceRatioSelector and BalanceRatio.
• Once: White balancing is automatically adjusted once by the device. Once it has
converged, it automatically returns to the Off state.
• Continuous: White balancing is constantly adjusted by the device.
On top of the previous standard values, a device might also provide device-specific values.
9.15 Gamma
Name Gamma
Category AnalogControl
Level Optional
Interface IFloat
Access Read/Write
Unit -
Visibility Beginner
Values >0.0
Controls the gamma correction of pixel intensity. This is typically used to compensate for non-
linearity of the display system (such as CRT).
Gamma correction is realized by the following formula:
Y` = YGamma
where
Y` is the new pixel intensity
Y is the original pixel intensity
Gamma is the correction factor
The realization of the gamma correction can be implemented using a LUT. Therefore, it is
possible that some LUT functionality is not available when gamma correction is activated.
10 LUT Control
Features in this chapter describe the Look-up table (LUT) realated features.
10.1 LUTControl
Name LUTControl
Category Root
Level Optional
Interface ICategory
Access Read
Unit -
Visibility Expert
Values -
10.2 LUTSelector
Name LUTSelector
Category LUTControl
Level Optional
Interface IEnumeration
Access Read/Write
Unit -
Visibility Expert
Values Luminance
Red
Green
Blue
Device-specific
10.3 LUTEnable
Name LUTEnable[LUTSelector]
Category LUTControl
Level Optional
Interface IBoolean
Access Read/Write
Unit -
Visibility Expert
Values True
False
10.4 LUTIndex
Name LUTIndex[LUTSelector]
Category LUTControl
Level Optional
Interface IInteger
Access Read/Write
Unit -
Visibility Guru
Values ≥0
Control the index (offset) of the coefficient to access in the selected LUT.
10.5 LUTValue
Name LUTValue[LUTSelector][LUTIndex]
Category LUTControl
Level Optional
Interface IInteger
Access Read/Write
Unit -
Visibility Guru
Values Device-specific
10.6 LUTValueAll
Name LUTValueAll[LUTSelector]
Category LUTControl
Level Optional
Interface IRegister
Access Read/Write
Unit -
Visibility Guru
Values Device-specific
Accesses all the LUT coefficients in a single access without using individual LUTIndex.
11 GenICam Control
This chapter provides the necessary features to use the GenICam feature tree.
Note: In case of discrepancy between the features described in this chapter and the "GenICam
Standard text" the SFNC document prevail.
11.1 Root
Name Root
Category None
Level Mandatory
Interface ICategory
Access Read
Unit -
Mandatory Beginner
Visibility
Values -
11.2 Device
Name Device
Category None
Level Mandatory
Interface IPort
Access Read/Write
Unit -
Visibility Invisible
Values -
11.3 TLParamsLocked
Name TLParamsLocked
Category None
Level Mandatory
Interface IInteger
Access Read/Write
Unit -
Visibility Invisible
Values -
Used by the Transport Layer to prevent critical features changes during acquisition.
12.1.1 TransportLayerControl
Name TransportLayerControl
Category Root
Level Recommended
Interface ICategory
Access Read
Unit -
Visibility Beginner
Values -
12.1.2 PayloadSize
Name PayloadSize
Category TransportLayerControl
Level Recommended
Interface IInteger
Access Read
Unit B
Visibility Expert
Values >0
Provides the number of bytes transferred for each image or chunk on the stream channel. This
includes any end-of-line, end-of-frame statistics or other stamp data. This is the total size of data
payload for a data block.
For the devices supporting multiple Stream Channels, the DeviceStreamChannelSelector feature
should be used to select PayloadSize. This permits to inquire the payload size of each Stream
channel individually.
This feature is mainly used by the application software to determine size of image buffers to
allocate (largest buffer possible for current mode of operation).
For example, an image with no statistics or timestamp data has typically a PayloadSize equals to
(width x height x pixel size) in bytes. But it is strongly recommended to retrieve PayloadSize
from the camera instead of relying on the above formula.
This feature is generaly mandatory for transmitters and transceivers of most Transport Layers.
Note that for GigE vision devices, the UDP and GVSP headers are not considered in the
PayloadSize value. Data leader and data trailer are not included either.
12.1.3 DeviceTapGeometry
Name DeviceTapGeometry
Category TransportLayerControl
Level Recommended
Interface IEnumeration
Access Read/(Write)
Unit -
Visibility Expert
Values Geometry_1X_1Y
Geometry_1X2_1Y
Geometry_2X_1Y
Geometry_2XE_1Y
Geometry_2XM_1Y
Geometry_1X_1Y2
Geometry_1X_2YE
Geometry_1X3_1Y
Geometry_3X_1Y
Geometry_1X
Geometry_1X2
Geometry_2X
Geometry_2XE
Geometry_2XM
Geometry_1X3
Geometry_3X
Geometry_1X4_1Y
Geometry_4X_1Y
Geometry_2X2_1Y
Geometry_2X2E_1Y
Geometry_2X2M_1Y
Geometry_1X2_2YE
Geometry_2X_2YE
Geometry_2XE_2YE
Geometry_2XM_2YE
Geometry_1X4
Geometry_4X
Geometry_2X2
Geometry_2X2E
Geometry_2X2M
Geometry_1X8_1Y
Geometry_8X_1Y
Geometry_4X2_1Y
Geometry_2X2E_2YE
Geometry_1X8
Geometry_8X
Geometry_4X2
Geometry_1X10_1Y
Geometry_10X_1Y
Geometry_1X10
Geometry_10X
…
This device tap geometry feature describes the geometrical properties characterizing the taps of a
camera as presented at the output of the device.
Possibles values are:
Geometry_1X_1Y: 1 X 1Y tap geometry.
Geometry_1X2_1Y: 1 X2 1Y tap geometry.
Geometry_2X_1Y: 2 X 1Y tap geometry.
Geometry_2XE_1Y: 2 XE 1Y tap geometry.
Geometry_2XM_1Y: 2 XM 1Y tap geometry.
Geometry_1X_1Y2: 1 X 1Y2 tap geometry.
Geometry_1X_2YE: 1 X 2YE tap geometry.
Geometry_1X3_1Y: 1 X3 1Y tap geometry.
Geometry_3X_1Y: 3 X 1Y tap geometry.
Geometry_1X: 1 X tap geometry.
Geometry_1X2: 1 X2 tap geometry.
Geometry_2X: 2 X tap geometry.
Geometry_2XE: 2 XE tap geometry.
Geometry_2XM: 2 XM tap geometry.
Geometry_1X3: 1 X3 tap geometry.
More detailed explanation, including graphical representation for every single Tap configuration
is provided in the Tap Geometry Appendix of this document.
12.2.1 GigEVision
Name GigEVision
Category TransportLayerControl
Level Optional
Interface ICategory
Access Read
Unit -
Visibility Beginner
Values -
Category that contains the features pertaining to the GigE Vision transport layer of the device.
12.2.2 GevVersionMajor
Name GevVersionMajor
Category GigEVision
Level Recommended
Interface IInteger
Access Read
Unit -
Visibility Expert
Values >0
12.2.3 GevVersionMinor
Name GevVersionMinor
Category GigEVision
Level Recommended
Interface IInteger
Access Read
Unit -
Visibility Expert
Values ≥0
12.2.4 GevDeviceModeIsBigEndian
Name GevDeviceModeIsBigEndian
Category GigEVision
Level Optional
Interface IBoolean
Access Read
Unit -
Visibility Guru
Values True
False
12.2.5 GevDeviceClass
Name GevDeviceClass
Category GigEVision
Level Optional
Interface IEnumeration
Access Read
Unit -
Visibility Guru
Values Transmitter
Receiver
Transceiver
Peripheral
12.2.6 GevDeviceModeCharacterSet
Name GevDeviceModeCharacterSet
Category GigEVision
Level Optional
Interface IEnumeration
Access Read
Unit -
Visibility Guru
Values UTF8
12.2.7 GevPhysicalLinkConfiguration
Name GevPhysicalLinkConfiguration
Category GigEVision
Level Optional
Interface IEnumeration
Access Read/Write
Unit -
Visibility Expert
Values SingleLink
MultiLink
StaticLAG
DynamicLAG
Controls the principal physical link configuration to use on next restart/power-up of the device.
12.2.8 GevCurrentPhysicalLinkConfiguration
Name GevCurrentPhysicalLinkConfiguration
Category GigEVision
Level Optional
Interface IEnumeration
Access Read
Unit -
Visibility Expert
Values SingleLink
MultiLink
StaticLAG
DynamicLAG
12.2.9 GevActiveLinkCount
Name GevActiveLinkCount
Category GigEVision
Level Optional
Interface IInteger
Access Read
Unit -
Visibility Expert
Values >0
12.2.10 GevInterfaceSelector
Name GevInterfaceSelector
Category GigEVision
Level Optional
Interface IInteger
Access Read/Write
Unit -
Visibility Beginner
Values ≥0
12.2.11 GevLinkSpeed
Name GevLinkSpeed[GevInterfaceSelector]
Category GigEVision
Level Optional
Interface IInteger
Access Read
Unit Mbs
Visibility Expert
Values >0
12.2.12 GevMACAddress
Name GevMACAddress[GevInterfaceSelector]
Category GigEVision
Level Optional
Interface IInteger
Access Read
Unit -
Visibility Beginner
Values ≥0
12.2.13 GevSupportedOptionSelector
Name GevSupportedOptionSelector
Category GigEVision
Level Optional
Interface IEnumeration
Access Read/Write
Unit -
Visibility Expert
Values SingleLink
MultiLink
StaticLAG
DynamicLAG
PAUSEFrameReception
PAUSEFrameGeneration
IPConfigurationLLA
IPConfigurationDHCP
IPConfigurationPersistentIP
StreamChannelSourceSocket
StandardIDMode
MessageChannelSourceSocket
CommandsConcatenation
WriteMem
PacketResend
Event
EventData
PendingAck
IEEE1588
Action
UnconditionalAction
ScheduledAction
PrimaryApplicationSwitchover
ExtendedStatusCodes
ExtendedStatusCodesVersion2_0
DiscoveryAckDelay
DiscoveryAckDelayWritable
TestData
ManifestTable
2012-10-25 Page 218 of 366
Version 2.0 Standard Features Naming Convention
CCPApplicationSocket
LinkSpeed
HeartbeatDisable
SerialNumber
UserDefinedName
StreamChannel0BigAndLittleEndian
StreamChannel0IPReassembly
StreamChannel0MultiZone
StreamChannel0PacketResendDestination
StreamChannel0AllInTransmission
StreamChannel0UnconditionalStreaming
StreamChannel0ExtendedChunkData
StreamChannel1BigAndLittleEndian
StreamChannel1IPReassembly
StreamChannel1MultiZone
StreamChannel1PacketResendDestination
StreamChannel1AllInTransmission
StreamChannel1UnconditionalStreaming
StreamChannel1ExtendedChunkData
StreamChannel2BigAndLittleEndian
StreamChannel2IPReassembly
StreamChannel2MultiZone
StreamChannel2PacketResendDestination
StreamChannel2AllInTransmission
StreamChannel2UnconditionalStreaming
StreamChannel2ExtendedChunkData
…
12.2.14 GevSupportedOption
Name GevSupportedOption[GevSupportedOptionSelector]
Category GigEVision
Level Optional
Interface IBoolean
Access Read
Unit -
Visibility Expert
Values True
False
12.2.15 GevPAUSEFrameReception
Name GevPAUSEFrameReception[GevInterfaceSelector]
Category GigEVision
Level Optional
Interface IBoolean
Access Read/(Write)
Unit -
Visibility Expert
Values True
False
Controls whether incoming PAUSE Frames are handled on the given logical link.
12.2.16 GevPAUSEFrameTransmission
Name GevPAUSEFrameTransmission[GevInterfaceSelector]
Category GigEVision
Level Optional
Interface IBoolean
Access Read/(Write)
Unit -
Visibility Expert
Values True
False
Controls whether PAUSE Frames can be generated on the given logical link.
12.2.17 GevCurrentIPConfigurationLLA
Name GevCurrentIPConfigurationLLA[GevInterfaceSelector]
Category GigEVision
Level Optional
Interface IBoolean
Access Read/Write
Unit -
Visibility Beginner
Values True
Controls whether the Link Local Address IP configuration scheme is activated on the given
logical link.
12.2.18 GevCurrentIPConfigurationDHCP
Name GevCurrentIPConfigurationDHCP[GevInterfaceSelector]
Category GigEVision
Level Optional
Interface IBoolean
Access Read/Write
Unit -
Visibility Beginner
Values True
False
Controls whether the DHCP IP configuration scheme is activated on the given logical link.
12.2.19 GevCurrentIPConfigurationPersistentIP
Name GevCurrentIPConfigurationPersistentIP[GevInterfaceSelector]
Category GigEVision
Level Optional
Interface IBoolean
Access Read/Write
Unit -
Visibility Beginner
Values True
False
Controls whether the PersistentIP configuration scheme is activated on the given logical link.
12.2.20 GevCurrentIPAddress
Name GevCurrentIPAddress[GevInterfaceSelector]
Category GigEVision
Level Optional
Interface IInteger
Access Read
Unit -
Visibility Beginner
Values ≥0
12.2.21 GevCurrentSubnetMask
Name GevCurrentSubnetMask[GevInterfaceSelector]
Category GigEVision
Level Optional
Interface IInteger
Access Read
Unit -
Visibility Beginner
Values ≥0
12.2.22 GevCurrentDefaultGateway
Name GevCurrentDefaultGateway[GevInterfaceSelector]
Category GigEVision
Level Optional
Interface IInteger
Access Read
Unit -
Visibility Beginner
Values ≥0
Reports the default gateway IP address to be used on the given logical link.
12.2.23 GevIPConfigurationStatus
Name GevIPConfigurationStatus[GevInterfaceSelector]
Category GigEVision
Level Optional
Interface IEnumeration
Access Read
Unit -
Visibility Beginner
Values None
PersistentIP
DHCP
LLA
ForceIP
12.2.24 GevFirstURL
Name GevFirstURL
Category GigEVision
Level Optional
Interface IString
Access Read
Unit -
Visibility Guru
Values -
Indicates the first URL to the GenICam XML device description file. The First URL is used as
the first choice by the application to retrieve the GenICam XML device description file.
12.2.25 GevSecondURL
Name GevSecondURL
Category GigEVision
Level Optional
Interface IString
Access Read
Unit -
Visibility Guru
Values -
Indicates the second URL to the GenICam XML device description file. This URL is an
alternative if the application was unsuccessful to retrieve the device description file using the first
URL.
12.2.26 GevNumberOfInterfaces
Name GevNumberOfInterfaces
Category GigEVision
Level Optional
Interface IInteger
Access Read
Unit -
Visibility Expert
Values >0
12.2.27 GevPersistentIPAddress
Name GevPersistentIPAddress[GevInterfaceSelector]
Category GigEVision
Level Optional
2012-10-25 Page 224 of 366
Version 2.0 Standard Features Naming Convention
Interface IInteger
Access Read/Write
Unit -
Visibility Beginner
Values ≥0
Controls the Persistent IP address for this logical link. It is only used when the device boots with
the Persistent IP configuration scheme.
12.2.28 GevPersistentSubnetMask
Name GevPersistentSubnetMask[GevInterfaceSelector]
Category GigEVision
Level Optional
Interface IInteger
Access Read/Write
Unit -
Visibility Beginner
Values ≥0
Controls the Persistent subnet mask associated with the Persistent IP address on this logical link.
It is only used when the device boots with the Persistent IP configuration scheme.
12.2.29 GevPersistentDefaultGateway
Name GevPersistentDefaultGateway[GevInterfaceSelector]
Category GigEVision
Level Optional
Interface IInteger
Access Read/Write
Unit -
Visibility Beginner
Values ≥0
Controls the persistent default gateway for this logical link. It is only used when the device boots
with the Persistent IP configuration scheme.Visibility
12.2.30 GevMessageChannelCount
Name GevMessageChannelCount
Category GigEVision
Level Optional
Interface IInteger
Access Read
Unit -
Visibility Expert
Values 0 or 1
12.2.31 GevStreamChannelCount
Name GevStreamChannelCount
Category GigEVision
Level Optional
Interface IInteger
Access Read
Unit -
Visibility Expert
Values 0 to 512
12.2.32 GevHeartbeatTimeout
Name GevHeartbeatTimeout
Category GigEVision
Level Optional
Interface IInteger
Access Read/Write
Unit ms
Visibility Guru
Values >0
12.2.33 GevTimestampTickFrequency
Name GevTimestampTickFrequency
Category GigEVision
Level Optional
Interface IInteger
Access Read
Unit Hz
Visibility Expert
Values ≥0
Indicates the number of timestamp ticks in 1 second (frequency in Hz). If IEEE 1588 is used, this
feature must return 1,000,000,000 (1 GHz).
This is a 64 bits number.
12.2.34 GevTimestampControlLatch
Name GevTimestampControlLatch
Category GigEVision
Level Optional
Interface ICommand
Access Write
Unit -
Visibility Expert
Values -
12.2.35 GevTimestampControlReset
Name GevTimestampControlReset
Category GigEVision
Level Optional
Interface ICommand
Access Write
Unit -
Visibility Expert
Values -
Resets the timestamp counter to 0. This feature is not available or as no effect when IEEE 1588 is
used.
12.2.36 GevTimestampValue
Name GevTimestampValue
Category GigEVision
Level Optional
Interface IInteger
Access Read
Unit
Visibility Expert
Values ≥0
12.2.37 GevDiscoveryAckDelay
Name GevDiscoveryAckDelay
Category GigEVision
Level Optional
Interface IInteger
Access Read/(Write)
Unit ms
Visibility Expert
Values ≥0 and < 1000
Indicates the maximum randomized delay the device will wait to acknowledge a discovery
command.
12.2.38 GevIEEE1588
Name GevIEEE1588
Category GigEVision
Level Optional
Interface IBoolean
Access Read/Write
Unit -
Visibility Expert
Values True
False
Enables the IEEE 1588 Precision Time Protocol to control the timestamp register.
12.2.39 GevIEEE1588ClockAccuracy
Name GevIEEE1588ClockAccuracy
Category GigEVision
Level Optional
Interface IEnumeration
Access Read/(Write)
Unit -
Visibility Expert
Values Within25ns
Within100ns
Within250ns
Within1us
Within2p5u
Within10us
Within25us
Within100us
Within250us
Within1ms
Within2p5ms
Within10ms
Within25ms
Within100ms
Within250ms
Within1s
Within10s
GreaterThan10s
AlternatePTPProfile
Unknown
Reserved
Indicates the expected accuracy of the device clock when it is the grandmaster, or in the event it
becomes the grandmaster.
This feature maps to the IEEE 1588 clockAccuracy attribute.
12.2.40 GevIEEE1588Status
Name GevIEEE1588Status
Category GigEVision
Level Optional
Interface IEnumeration
Access Read
Unit -
Visibility Expert
Values Initializing
Faulty
Disabled
Listening
PreMaster
Master
Passive
Uncalibrated
Slave
12.2.41 GevGVCPExtendedStatusCodesSelector
Name GevGVCPExtendedStatusCodesSelector
Category GigEVision
Level Optional
Interface IEnumeration
Access Read/Write
Unit -
Visibility Guru
Values Version1_1
Version2_0
Selects the GigE Vision version to control extended status codes for.
12.2.42 GevGVCPExtendedStatusCodes
Name GevGVCPExtendedStatusCodes[GevGVCPExtendedStatusCodesSelector]
Category GigEVision
Level Optional
Interface IBoolean
Access Read/Write
Unit -
Visibility Guru
Values True
False
12.2.43 GevGVCPPendingAck
Name GevGVCPPendingAck
Category GigEVision
Level Optional
Interface IBoolean
Access Read/Write
Unit -
Visibility Guru
Values True
False
12.2.44 GevGVCPHeartbeatDisable
Name GevGVCPHeartbeatDisable
Category GigEVision
Level Optional
Interface IBoolean
Access Read/Write
Unit -
Visibility Expert
Values True
False
12.2.45 GevGVCPPendingTimeout
Name GevGVCPPendingTimeout
Category GigEVision
Level Optional
Interface IInteger
Access Read
Unit -
Visibility Guru
Values ≥0
Indicates the longest GVCP command execution time before a device returns a PENDING_ACK.
2012-10-25 Page 232 of 366
Version 2.0 Standard Features Naming Convention
12.2.46 GevPrimaryApplicationSwitchoverKey
Name GevPrimaryApplicationSwitchoverKey
Category GigEVision
Level Optional
Interface IInteger
Access Write-Only
Unit -
Visibility Guru
Values ≥0
12.2.47 GevGVSPExtendedIDMode
Name GevGVSPExtendedIDMode
Category GigEVision
Level Optional
Interface IEnumeration
Access Read/(Write)
Unit -
Visibility Expert
Values Off
On
12.2.48 GevCCP
Name GevCCP
Category GigEVision
Level Optional
Interface IEnumeration
Access Read/Write
Unit -
Visibility Guru
Values OpenAccess
ExclusiveAccess
ControlAccess
ControlAccessSwitchoverActive
12.2.49 GevPrimaryApplicationSocket
Name GevPrimaryApplicationSocket
Category GigEVision
Level Optional
Interface IInteger
Access Read
Unit -
Visibility Guru
Values ≥0
12.2.50 GevPrimaryApplicationIPAddress
Name GevPrimaryApplicationIPAddress
Category GigEVision
Level Optional
Interface IInteger
Access Read
Unit -
Visibility Guru
Values ≥0
12.2.51 GevMCPHostPort
Name GevMCPHostPort
Category GigEVision
Level Optional
Interface IInteger
Access Read/Write
Unit -
Visibility Guru
Values ≥0
Controls the port to which the device must send messages. Setting this value to 0 closes the
message channel.
12.2.52 GevMCDA
Name GevMCDA
Category GigEVision
Level Optional
Interface IInteger
Access Read/Write
Unit -
Visibility Guru
Values ≥0
12.2.53 GevMCTT
Name GevMCTT
Category GigEVision
Level Optional
Interface IInteger
Access Read/Write
Unit ms
Visibility Guru
Values >0
12.2.54 GevMCRC
Name GevMCRC
Category GigEVision
Level Optional
Interface IInteger
Access Read/Write
Unit -
Visibility Guru
Values ≥0
Controls the number of retransmissions allowed when a message channel message times out.
12.2.55 GevMCSP
Name GevMCSP
Category GigEVision
Level Optional
Interface IInteger
Access Read
Unit -
Visibility Guru
Values ≥0
This feature indicates the source port for the message channel.
12.2.56 GevStreamChannelSelector
Name GevStreamChannelSelector
Category GigEVision
Level Optional
Interface IInteger
Access Read/Write
Unit -
Visibility Expert
Values ≥0
12.2.57 GevSCCFGPacketResendDestination
Name GevSCCFGPacketResendDestination[GevStreamChannelSelector]
Category GigEVision
Level Optional
Interface IBoolean
Access Read/Write
Unit -
Visibility Guru
Values True
False
Enables the alternate IP destination for stream packets resent due to a packet resend request.
When True, the source IP address provided in the packet resend command packet is used. When
False, the value set in the GevSCDA[GevStreamChannelSelector] feature is used.
This feature is only valid for GVSP transmitters.
12.2.58 GevSCCFGAllInTransmission
Name GevSCCFGAllInTransmission[GevStreamChannelSelector]
Category GigEVision
Level Optional
Interface IBoolean
Access Read/Write
Unit -
Visibility Guru
Values True
False
Enables the selected GVSP transmitter to use the single packet per data block All-in
Transmission mode.
12.2.59 GevSCCFGUnconditionalStreaming
Name GevSCCFGUnconditionalStreaming[GevStreamChannelSelector]
Category GigEVision
Level Optional
Interface IBoolean
Access Read/Write
Unit -
Visibility Guru
Values True
False
Enables the camera to continue to stream, for this stream channel, if its control channel is closed
or regardless of the reception of any ICMP messages (such as destination unreachable messages).
12.2.60 GevSCCFGExtendedChunkData
Name GevSCCFGExtendedChunkData[GevStreamChannelSelector]
Category GigEVision
Level Optional
Interface IBoolean
Access Read/Write
Unit -
Visibility Guru
Values True
False
Enables cameras to use the extended chunk data payload type for this stream channel.
12.2.61 GevSCPDirection
Name GevSCPDirection[GevStreamChannelSelector]
Category GigEVision
Level Optional
Interface IEnumeration
Access Read
Unit -
Visibility Guru
Values Transmitter
Receiver
12.2.62 GevSCPInterfaceIndex
Name GevSCPInterfaceIndex[GevStreamChannelSelector]
Category GigEVision
Level Optional
Interface IInteger
Access Read/(Write)
Unit -
Visibility Guru
Values 0 to 3
12.2.63 GevSCPHostPort
Name GevSCPHostPort[GevStreamChannelSelector]
Category GigEVision
Level Optional
Interface IInteger
Access Read/Write
Unit -
Visibility Guru
Values ≥0
Controls the port of the selected channel to which a GVSP transmitter must send data stream or
the port from which a GVSP receiver may receive data stream. Setting this value to 0 closes the
stream channel.
12.2.64 GevSCPSFireTestPacket
Name GevSCPSFireTestPacket[GevStreamChannelSelector]
Category GigEVision
Level Optional
Interface IBoolean
Access Read/Write
Unit -
Visibility Guru
Values True
False
Sends a test packet. When this feature is set, the device will fire one test packet.
The "don`t fragment" bit of IP header must be set for this test packet.
12.2.65 GevSCPSDoNotFragment
Name GevSCPSDoNotFragment[GevStreamChannelSelector]
Category GigEVision
Level Optional
Interface IBoolean
Access Read/Write
Unit -
Visibility Guru
Values True
False
The state of this feature is copied into the "do not fragment" bit of IP header of each stream
packet. It can be used by the application to prevent IP fragmentation of packets on the stream
channel.
12.2.66 GevSCPSBigEndian
Name GevSCPSBigEndian[GevStreamChannelSelector]
Category GigEVision
Level Optional
Interface IBoolean
Access Read/Write
Unit -
Visibility Guru
Values True
False
12.2.67 GevSCPSPacketSize
Name GevSCPSPacketSize[GevStreamChannelSelector]
Category GigEVision
Level Recommended
Interface IInteger
Access Read/(Write)
Unit B
Visibility Expert
Values >0
Specifies the stream packet size, in bytes, to send on the selected channel for a GVSP transmitter
or specifies the maximum packet size supported by a GVSP receiver.
This does not include data leader and data trailer and the last data packet which might be of
smaller size (since packet size is not necessarily a multiple of block size for stream channel).
If a device cannot support the requested packet size, then it must not fire a test packet when
requested to do so.
12.2.68 GevSCPD
Name GevSCPD[GevStreamChannelSelector]
Category GigEVision
Level Recommended
Interface IInteger
Access Read/Write
Unit
Visibility Expert
Values ≥0
Controls the delay (in timestamp counter unit) to insert between each packet for this stream
channel. This can be used as a crude flow-control mechanism if the application or the network
infrastructure cannot keep up with the packets coming from the device.
12.2.69 GevSCDA
Name GevSCDA[GevStreamChannelSelector]
Category GigEVision
Level Optional
Interface IInteger
Access Read/Write
Unit -
Visibility Guru
Values ≥0
Controls the destination IP address of the selected stream channel to which a GVSP transmitter
must send data stream or the destination IP address from which a GVSP receiver may receive
data stream.
12.2.70 GevSCSP
Name GevSCSP[GevStreamChannelSelector]
Category GigEVision
Level Optional
Interface IInteger
Access Read
Unit -
Visibility Guru
Values ≥0
12.2.71 GevSCZoneCount
Name GevSCZoneCount[GevStreamChannelSelector]
Category GigEVision
Level Optional
Interface IInteger
Access Read
Unit -
Visibility Guru
Values 1 to 32
Reports the number of zones per block transmitted on the selected stream channel.
12.2.72 GevSCZoneDirectionAll
Name GevSCZoneDirectionAll[GevStreamChannelSelector]
Category GigEVision
Level Optional
Interface IInteger
Access Read
Unit -
Visibility Guru
Reports the transmission direction of each zone transmitted on the selected stream channel.
This feature is represented as an unsigned integer. The most significant bit of the range of valid
values reports the direction of the first zone (Zone ID 0) while the least significant bit represents
the direction of the last zone (Zone ID 1).
12.2.73 GevSCZoneConfigurationLock
Name GevSCZoneConfigurationLock[GevStreamChannelSelector]
Category GigEVision
Level Optional
Interface IBoolean
Access Read/Write
Unit -
Visibility Guru
Values True
False
Controls whether the selected stream channel multi-zone configuration is locked. When locked,
the GVSP transmitter is not allowed to change the number of zones and their direction during
block acquisition and transmission.
12.3.1 NetworkStatistics
Name NetworkStatistics
Category TransportLayerControl
Level Optional
Interface ICategory
Access Read
Unit -
Visibility Guru
Values -
Category that contains statistics pertaining to various modules of the GigE Vision transport layer.
12.3.2 oMACControlFunctionEntity
Name oMACControlFunctionEntity
Category NetworkStatistics
Level Optional
Interface ICategory
Access Read
Unit -
Visibility Guru
Values -
Category that contains statistics pertaining to the MAC control PAUSE function of the device.
When multiple links are aggregated together, this category represents the aggregated statistics of
all associated MACs. This is because it is not possible to select each physical network interface in
this case.
The counters in this section are defined by the IEEE 802.3 standard. They are generally
nonresetable. Rollover behavior and maximum value are device-specific.
12.3.3 aPAUSEMACCtrlFramesTransmitted
Name aPAUSEMACCtrlFramesTransmitted[GevInterfaceSelector]
Category oMACControlFunctionEntity
Level Optional
Interface IInteger
Access Read
Unit -
Visibility Guru
Values ≥0
12.3.4 aPAUSEMACCtrlFramesReceived
Name aPAUSEMACCtrlFramesReceived[GevInterfaceSelector]
Category oMACControlFunctionEntity
Level Optional
Interface IInteger
Access Read
Unit -
Visibility Guru
Values ≥0
12.4.1 CameraLink
Name CameraLink
Category TransportLayerControl
Level Optional
Interface ICategory
Access Read
Unit -
Visibility Beginner
Values -
Category that contains the features pertaining to the Camera Link transport layer of the device.
This category is optional especially if the device supports only one transport layer.
12.4.2 ClConfiguration
Name ClConfiguration
Category CameraLink
Level Recommended
Interface IEnumeration
Access Read/(Write)
Unit -
Visibility Beginner
Values Base
Medium
Full
DualBase
EightyBit
Deca (Deprecated)
This Camera Link specific feature describes the configuration used by the camera. It helps
especially when a camera is capable of operation in a non-standard configuration, and when the
features PixelSize, SensorDigitizationTaps, and DeviceTapGeometry do not provide enough
information for interpretation of the image data provided by the camera.
Possible values are:
• Base: Standard base configuration described by the Camera Link standard.
• Medium: Standard medium configuration described by the Camera Link standard.
• Full: Standard full configuration described by the Camera Link standard.
• DualBase: The camera streams the data from multiple taps (that do not fit in the standard
base configuration) through two Camera Link base ports. It is responsibility of the
application or frame grabber to reconstruct the full image. Only one of the ports (fixed)
serves as the "master" for serial communication and triggering.
• EightyBit: Standard 80-bit configuration with 10 taps of 8 bits or 8 taps of 10 bits, as
described by the Camera Link standard.
• Deca (Deprecated): This enumeration entry is deprecated. It was used for Deca
configuration with 10 taps of 8-bit. Use EightyBit instead.
If the feature is omitted, one of the standard configurations (Base-Medium-Full) is expected. In
that case the configuration can be unequivocally deduced from the SensorDigitizationTaps and
PixelSize values.
12.4.3 ClTimeSlotsCount
Name ClTimeSlotsCount
Category CameraLink
Level Optional
Interface IEnumeration
Access Read/(Write)
Unit -
Visibility Expert
Values One
Two
Three
This Camera Link specific feature describes the time multiplexing of the camera link connection
to transfer more than the configuration allows, in one single clock.
Possible values are:
• One: One time slot.
• Two: Two time slots.
• One: Three time slots.
It indicates the number of consecutive time slots required to transfer one data of each tap.
12.5.1 CoaXPress
Name CoaXPress
Category TransportLayerControl
Level Optional
Interface ICategory
Access Read
Unit -
Visibility Beginner
Values -
Category that contains the features pertaining to the CoaXPress transport layer of the device.
12.5.2 CxpLinkConfigurationStatus
Name CxpLinkConfigurationStatus
Category CoaXPress
Level Recommended
Interface IEnumeration
Access Read
Unit -
Visibility Beginner
Values None
Pending
CXP1_X1
CXP2_X1
CXP3_X1
CXP5_X1
CXP6_X1
CXP1_X2
CXP2_X2
CXP3_X2
CXP5_X2
CXP6_X2
CXP1_X3
CXP2_X3
CXP3_X3
CXP5_X3
CXP6_X3
CXP1_X4
CXP2_X4
CXP3_X4
CXP5_X4
CXP6_X4
CXP1_X5
CXP2_X5
CXP3_X5
CXP5_X5
CXP6_X5
CXP1_X6
CXP2_X6
CXP3_X6
CXP5_X6
CXP6_X6
This feature indicates the current and active Link configuration used by the Device.
Note that the configuration used for a Link between a Transmitter and a Receiver Device can be
controlled by the CxpLinkConfiguration feature of the Receiver Device and
CxpLinkConfigurationStatus can be read back after CxpLinkConfiguration is changed to know
when the required configuration is really active on the Link and ready to be used.
This feature returns the link configuration as the combination of the connection speed and the
number of active connections. For example "CXP6_X4" means each connection is operating at
CXP-6 speed (6.25 Gbps) and there are four connections in use, so the total speed on the virtual
single link is 25 Gbps.
12.5.3 CxpLinkConfigurationPreferred
Name CxpLinkConfigurationPreferred
Category CoaXPress
Level Recommended
Interface IEnumeration
Access Read
Unit -
Visibility Expert
Values CXP1_X1
CXP2_X1
CXP3_X1
CXP5_X1
CXP6_X1
CXP1_X2
CXP2_X2
CXP3_X2
CXP5_X2
CXP6_X2
CXP1_X3
CXP2_X3
CXP3_X3
CXP5_X3
CXP6_X3
CXP1_X4
CXP2_X4
CXP3_X4
CXP5_X4
CXP6_X4
CXP1_X5
CXP2_X5
CXP3_X5
CXP5_X5
CXP6_X5
CXP1_X6
CXP2_X6
CXP3_X6
CXP5_X6
CXP6_X6
Returns the preferred Link configuration of the Transmitter Device.
The application may attempt to set the CxpConnectionConfiguration feature of the Receiver
Device to the value this feature has.
12.5.4 CxpLinkConfiguration
Name CxpLinkConfiguration
Category CoaXPress
Level Recommended
Interface IEnumeration
Access Read/(Write)
Unit -
Visibility Beginner
Values CXP1_X1
CXP2_X1
CXP3_X1
CXP5_X1
CXP6_X1
CXP1_X2
CXP2_X2
CXP3_X2
CXP5_X2
CXP6_X2
CXP1_X3
CXP2_X3
CXP3_X3
CXP5_X3
CXP6_X3
CXP1_X4
CXP2_X4
CXP3_X4
CXP5_X4
CXP6_X4
CXP1_X5
2012-10-25 Page 251 of 366
Version 2.0 Standard Features Naming Convention
CXP2_X5
CXP3_X5
CXP5_X5
CXP6_X5
CXP1_X6
CXP2_X6
CXP3_X6
CXP5_X6
CXP6_X6
This feature can be used to set the Link configuration for the communication between the
Receiver and Transmitter Device. If included, it should be read only on Transmitter Devices.
In most cases this feature does not need to be written because automatic discovery will set
configuration correctly.
Note the activation of a new configuration may take hundreds of milliseconds to complete.
So the requested configuration might not be active for a while. CxpLinkConfigurationStatus can
read back after CxpLinkConfiguration is changed to know when the required configuration is
really active on the Link and ready to be used.
The link configuration is specified as the combination of the connection speed and the number of
active connections. For example "CXP6_X4" means each connection is operating at CXP-6 speed
(6.25 Gbps) and there are four connections in use, so the total speed on a virtual single link is 25
Gbps.
12.5.5 CxpConnectionSelector
Name CxpConnectionSelector
Category CoaXPress
Level Recommended
Interface IInteger
Access Read/Write
Unit -
Visibility Expert
Values ≥0
Note that this selector should be set to 0, or omitted, when controlling features relating to the
CoaXPress uplink from the Receiver Device to the Transmitter Device, because only one
connection 0 is used for this purpose.
12.5.6 CxpConnectionTestMode
Name CxpConnectionTestMode[CxpConnectionSelector]
Category CoaXPress
Level Recommended
Interface IEnumeration
Access Read/Write
Unit -
Visibility Expert
Values Off
Mode1
Enables the test mode for an individual physical connection of the Device.
The Device receiving the test packet on the other end of the connection can check for errors by
reading its own corresponding CxpConnectionTestErrorCount and
CxpConnectionTestPacketCount features.
Typically, the test will need to be run for some time (e.g. minutes) to get a meaningful error rate.
12.5.7 CxpConnectionTestErrorCount
Name CxpConnectionTestErrorCount[CxpConnectionSelector]
Category CoaXPress
Level Recommended
Interface IInteger
Access Read/Write
Unit -
Visibility Expert
Values ≥0
Reports the current connection error count for test packets recieved by the device on the
connection selected by CxpConnectionSelector.
The transmission of those test packets is enabled by the CxpConnectionTestMode feature of the
Device on the other end of the connection under test.
This feature can be read at any time while a test is running. It can be written to zero when a test
is not running to reset the counter between tests.
12.5.8 CxpConnectionTestPacketCount
Name CxpConnectionTestPacketCount[CxpConnectionSelector]
Category CoaXPress
Level Recommended
Interface IInteger
Access Read/Write
Unit -
Visibility Expert
Values ≥0
Reports the current count for test packets recieved by the device on the connection selected by
CxpConnectionSelector.
The transmission of those test packets is enabled by the CxpConnectionTestMode feature of the
Device on the other end of the connection under test.
This feature can be read at any time while a test is running. It can be written to zero when the test
is not running to reset the counter between tests.
12.5.9 CxpPoCxpAuto
Name CxpPoCxpAuto
Category CoaXPress
Level Optional
Interface ICommand
Access Write
Unit -
Visibility Expert
Values -
Activate automatic control of the Power over CoaXPress (PoCXP) for the Link.
This feature shall be present only on receiver Device that controls the PoCXP.
12.5.10 CxpPoCxpTurnOff
Name CxpPoCxpTurnOff
Category CoaXPress
Level Optional
Interface ICommand
Access Write
Unit -
Visibility Expert
Values -
This feature shall be present only on receiver Device that controls the PoCXP.
12.5.11 CxpPoCxpTripReset
Name CxpPoCxpTripReset
Category CoaXPress
Level Optional
Interface ICommand
Access Write
Unit -
Visibility Expert
Values -
Reset the Power over CoaXPress (PoCXP) Link after an over-current trip on the Device
connection(s).
2012-10-25 Page 255 of 366
Version 2.0 Standard Features Naming Convention
This feature shall be present only on receiver device that controls the PoCXP.
12.5.12 CxpPoCxpStatus
Name CxpPoCxpStatus
Category CoaXPress
Level Optional
Interface IEnumeration
Access Read
Unit -
Visibility Expert
Values Auto
Off
Tripped
13.1 UserSetControl
Name UserSetControl
Category Root
Level Recommended
Interface ICategory
Access Read
Unit -
Visibility Beginner
Values -
13.2 UserSetSelector
Name UserSetSelector
Category UserSetControl
Level Recommended
Interface IEnumeration
Access Read/Write
Unit -
Visibility Beginner
Values Default
UserSet0 (if 0 based), UserSet1,
…
13.3 UserSetLoad
Name UserSetLoad[UserSetSelector]
Category UserSetControl
Level Recommended
Interface ICommand
Access (Read)/Write
Unit -
Visibility Beginner
Values -
Loads the User Set specified by UserSetSelector to the device and makes it active.
13.4 UserSetSave
Name UserSetSave[UserSetSelector]
Category UserSetControl
Level Recommended
Interface ICommand
Access (Read)/Write
Unit -
Visibility Beginner
Values -
Save the User Set specified by UserSetSelector to the non-volatile memory of the device.
13.5 UserSetDefault
Name UserSetDefault
Category UserSetControl
Level Optional
Interface IEnumeration
Access Read/Write
Unit -
Visibility Beginner
Values Default
UserSet0 (if 0 based), UserSet1,
…
Selects the feature User Set to load and make active by default when the device is reset.
Possible values are:
• Default: Select the factory setting user set.
• UserSet0: Select the user set 0.
• UserSet1: Select the user set 1.
• …
If Default is selected, the device will boot with the default factory settings and makes sure the
continuous acquisition use case is ready to be used.
This feature is deprecated (See UserSetDefault). Selects the feature User Set to load and make
active when the device is reset.
To help backward compatibility, this feature can be included as Invisible in the device’s XML.
Possible values are:
• Default: Select the factory setting user set.
• UserSet0: Select the user set 0.
• UserSet1: Select the user set 1.
• …
If Default is selected, the device will boot with the default factory settings and makes sure the
continuous acquisition use case works directly.
PayloadSize data
Image
With chunks enabled by setting ChunkModeActive to True the camera streams frames
consisting of chunks. In this mode the image is a chunk too.
data
PayloadSize +
tag
Image Pixel I/O ...
Format
Each chunk can be enabled or disabled using the ChunkSelector and ChunkEnable feature.
This allows controlling the embedding of different information in the payload.
The data in the chunks is exposed via the chunk parser. The naming scheme to access the data of
the chunk name is Chunkname.
14.1 ChunkDataControl
Name ChunkDataControl
Category Root
Level Recommended
Interface ICategory
Access Read
Unit -
Visibility Expert
Values -
14.2 ChunkModeActive
Name ChunkModeActive
Category ChunkDataControl
Level Recommended
Interface IBoolean
Access Read/Write
Unit -
Visibility Expert
Values True
False
14.3 ChunkSelector
Name ChunkSelector
Category ChunkDataControl
Level Recommended
Interface IEnumeration
Access Read/Write
Unit -
Visibility Expert
Values Image
OffsetX
2012-10-25 Page 262 of 366
Version 2.0 Standard Features Naming Convention
OffsetY
Width
Height
PixelFormat
PixelDynamicRangeMax
PixelDynamicRangeMin
Timestamp
LineStatusAll
CounterValue
TimerValue
ExposureTime
Gain
BlackLevel
LinePitchFrameID
SourceID
RegionID
TransferBlockID
TransferStreamID
TransferQueueCurrentBlockCount
StreamChannelID
14.4 ChunkEnable
Name ChunkEnable[ChunkSelector]
Category ChunkDataControl
Level Recommended
Interface IBoolean
Access Read/Write
Unit -
Visibility Expert
Values True
False
Enables the inclusion of the selected Chunk data in the payload of the image.
14.5 ChunkImage
Name ChunkImage
Category ChunkDataControl
Level Recommended
Interface IRegister
Access Read
Unit -
Visibility Guru
Values Device-specific
14.6 ChunkOffsetX
Name ChunkOffsetX
Category ChunkDataControl
Level Recommended
Interface IInteger
Access Read
Unit -
Visibility Expert
Values ≥0
14.7 ChunkOffsetY
Name ChunkOffsetY
Category ChunkDataControl
Level Recommended
Interface IInteger
Access Read
Unit -
Visibility Expert
Values ≥0
14.8 ChunkWidth
Name ChunkWidth
Category ChunkDataControl
Level Recommended
Interface IInteger
Access Read
Unit -
Visibility Expert
Values >0
14.9 ChunkHeight
Name ChunkHeight
Category ChunkDataControl
Level Recommended
Interface IInteger
Access Read
Unit -
Visibility Expert
Values >0
14.10 ChunkPixelFormat
Name ChunkPixelFormat
Category ChunkDataControl
Level Recommended
Interface IEnumeration
Access Read
Unit -
2012-10-25 Page 265 of 366
Version 2.0 Standard Features Naming Convention
Visibility Expert
Values Mono1p
Mono2p
Mono4p
Mono8
Mono8s
Mono10
Mono10c3a64
Mono10c3p32
Mono10g12
Mono10msb
Mono10p
Mono10pmsb
Mono10s
Mono12
Mono12g
Mono12msb
Mono14
Mono16
R8
G8
B8
RGB8
RGB8_Planar
RGB8a32
RGBa8
RGB10
RGB10_Planar
RGB10g32
RGB10g32msb
RGB10p32
RGB10p32msb
RGB12
RGB12_Planar
RGB16
RGB16_Planar
RGB565p
BGR10
BGR12
BGR16
2012-10-25 Page 266 of 366
Version 2.0 Standard Features Naming Convention
BGR565p
BGR8
BGRa8
YUV411_8
YUV422_8
YUV8
YCbCr411_8
YCbCr422_8
YCbCr601_411_8
YCbCr601_422_8
YCbCr601_8
YCbCr709_411_8
YCbCr709_422_8
YCbCr709_8
YCbCr8
BayerBG8
BayerGB8
BayerGR8
BayerRG8
BayerBG10
BayerBG10g12
BayerGB10
BayerGB10g12
BayerGR10
BayerGR10g12
BayerRG10
BayerRG10g12
BayerBG12
BayerBG12g
BayerGB12
BayerGB12g
BayerGR12
BayerGR12g
BayerRG12
BayerRG12g
BayerBG16
BayerGB16
BayerGR16
BayerRG16
Raw16
2012-10-25 Page 267 of 366
Version 2.0 Standard Features Naming Convention
Raw8
Device-specific
Mono12Packed
BayerGR10Packed
BayerRG10Packed
BayerGB10Packed
BayerBG10Packed
BayerGR12Packed
BayerRG12Packed
BayerGB12Packed
BayerBG12Packed
RGB10V1Packed
BGR10V1Packed
RGB12V1Packed
- Deprecated:
YUV8_UYV)
YUYVPacked (Deprecated, use YUV422_8)
RGB8Planar (Deprecated, use
RGB8_Planar)
RGB10Planar (Deprecated, use
RGB10_Planar)
RGB12Planar (Deprecated, use
RGB12_Planar)
RGB16Planar (Deprecated) use
RGB16_Planar)
Note that only a subset of the possible pixel formats is listed here.
See the PixelFormat feature for more details.
14.11 ChunkPixelDynamicRangeMin
Name ChunkPixelDynamicRangeMin
Category ChunkDataControl
Level Recommended
Interface IInteger
Access Read
Unit -
Visibility Expert
Values ≥0
Returns the minimum value of dynamic range of the image included in the payload.
14.12 ChunkPixelDynamicRangeMax
Name ChunkPixelDynamicRangeMax
Category ChunkDataControl
Level Recommended
Interface IInteger
Access Read
Unit -
Visibility Expert
Values ≥0
Returns the maximum value of dynamic range of the image included in the payload.
14.13 ChunkTimestamp
Name ChunkTimestamp
Category ChunkDataControl
Level Recommended
Interface IInteger
Access Read
Unit -
Visibility Expert
Values ≥0
Returns the Timestamp of the image included in the payload at the time of the FrameStart internal
event.
See Figure 5-3 for more details on FrameStart.
14.14 ChunkLineStatusAll
Name ChunkLineStatusAll
Category ChunkDataControl
Level Recommended
Interface IInteger
Access Read
Unit -
Visibility Expert
Values ≥0
Returns the status of all the I/O lines at the time of the FrameStart internal event.
14.15 ChunkCounterSelector
Name ChunkCounterSelector
Category ChunkDataControl
Level Recommended
Interface IEnumeration
Access Read/Write
Unit -
Visibility Expert
Values Counter0 (If 0 based), Counter1,
Counter2,…
14.16 ChunkCounterValue
Name ChunkCounterValue[ChunkCounterSele
ctor]
Category ChunkDataControl
Level Recommended
Interface IInteger
Access Read
Unit -
Visibility Expert
Values ≥0
Returns the value of the selected Chunk counter at the time of the FrameStart event.
2012-10-25 Page 274 of 366
Version 2.0 Standard Features Naming Convention
14.17 ChunkTimerSelector
Name ChunkTimerSelector
Category ChunkDataControl
Level Recommended
Interface IEnumeration
Access Read/Write
Unit -
Visibility Expert
Values Timer0 (If 0 based), Timer1,
Timer2, …
14.18 ChunkTimerValue
Name ChunkTimerValue[ChunkTimerSel
ector]
Category ChunkDataControl
Level Recommended
Interface IFloat
Access Read
Unit us
Visibility Expert
Values >0
Returns the value of the selected Timer at the time of the FrameStart internal event.
14.19 ChunkExposureTime
Name ChunkExposureTime
Category ChunkDataControl
Level Recommended
Interface IFloat
Access Read
Unit us
Visibility Expert
Values ≥0
14.20 ChunkGainSelector
Name ChunkGainSelector
Category ChunkDataControl
Level Recommended
Interface IEnumeration
Access Read/Write
Unit -
Visibility Expert
Values All
Red
Green
Blue
Y
U
V
Tap1, Tap2, …
AnalogAll
AnalogRed
AnalogGreen
AnalogBlue
AnalogY
AnalogU
AnalogV
AnalogTap1, AnalogTap2, …
DigitalAll
DigitalRed
DigitalGreen
DigitalBlue
DigitalY
DigitalU
DigitalV
DigitalTap1, DigitalTap2, …
14.21 ChunkGain
Name ChunkGain[ChunkGainSelector]
Category ChunkDataControl
Level Recommended
Interface IFloat
Access Read
Unit -
Visibility Expert
Values Device-specific
14.22 ChunkBlackLevelSelector
Name ChunkBlackLevelSelector
Category ChunkDataControl
Level Recommended
Interface IEnumeration
Access Read/Write
2012-10-25 Page 278 of 366
Version 2.0 Standard Features Naming Convention
Unit -
Visibility Expert
Values All
Red
Green
Blue
Y
U
V
Tap1, Tap2, …
14.23 ChunkBlackLevel
Name ChunkBlackLevel[ChunkBlackLevelSelector]
Category ChunkDataControl
Level Recommended
Interface IFloat
Access Read
Unit -
Visibility Expert
Values Device-specific
Returns the black level used to capture the image included in the payload.
14.24 ChunkLinePitch
Name ChunkLinePitch
Category ChunkDataControl
Level Recommended
Interface IInteger
Access Read
Unit B
Visibility Expert
Values >0
14.25 ChunkFrameID
Name ChunkFrameID
Category ChunkDataControl
Level Recommended
Interface IInteger
Access Read
Unit -
Visibility Expert
Values ≥0
Returns the unique Identifier of the frame (or image) included in the payload.
Recommended behavior of the identifier: It should start at a certain minimum value and keep
incrementing by one for each frame up to a maximum, then it wraps to the minimum again. Each
streaming channel should maintain the Frame ID separately.
Note: For GigE Vision, this chunk is not necessarly the block_id field included in the GVSP
headers but can be equal to it.
14.26 ChunkSourceID
Name ChunkSourceID
Category ChunkDataControl
Level Optional
Interface IEnumeration
Access Read
Unit -
Visibility Expert
Values Source0 (if 0 based)
Source1
Source2
…
14.27 ChunkRegionID
Name ChunkRegionID
Category ChunkDataControl
Level Optional
Interface IEnumeration
Access Read
Unit -
Visibility Expert
Values Region0 (if 0 based)
Region1
Region2
…
14.28 ChunkTransferBlockID
Name ChunkTransferBlockID
Category ChunkDataControl
Level Recommended
Interface IInteger
Access Read
Unit -
Visibility Expert
Values ≥0
Returns the unique identifier of the transfer block used to transport the payload.
The block ID is usually defined by the transport layer and repeated in the chunk for convenience.
14.29 ChunkTransferStreamID
Name ChunkTransferStreamID
Category ChunkDataControl
Level Recommended
Interface IEnumeration
Access Read
Unit -
Visibility Expert
Values Stream0 (if 0 based)
Stream1
Stream2
Stream3
…
14.30 ChunkTransferQueueCurrentBlockCount
Name ChunkTransferQueueCurrentBlockCount
Category ChunkDataControl
Level Optional
Interface IInteger
Access Read
Unit -
Visibility Expert
Values ≥0
14.31 ChunkStreamChannelID
Name ChunkStreamChannelID
Category ChunkDataControl
Level Recommended
Interface IInteger
Access Read
Unit -
Visibility Expert
Values >0
The File Access Controls chapter describes all features related to accessing files in the device.
It contains the definition of a generic file access schema for GenICam compliant devices. It is
based on a set of standard features that are controlled from adapter code which resides in the
GenICam reference implementation. The adapter code presents its services through an interface
inherited from std::iostream.
The model, on which the controls are based, is depicted in the following diagram::
IDevFileStream
IDevFileStreamBuf ODevFileStreamBuf
(Persistent)
Storage
Device
It assumes that all operations, which can be done on the persistent storage, could be executed by
using operations with the semantic of fopen/fclose/fread/fwrite. The operations and their
parameters are mapped onto the features of the list of File Access Controls.
To provide a generic API on top of the File Access Controls, a FileAccessAdapter is defined in
the GenApi. T he Adapter provides two iostream interfaces to the device files:
• IDevFileStream Read from the device
• ODevFileStream Write to the device
The File Protocol Adapter is responsible for the mapping of the (I/O) DevFileStreamBuf actions
Open, Close, UnderFlow, Overflow on File Access Controls
//GenApi::INodeMap * pInterface
ODevFileStream usersetWrite;
usersetWrite.open(pInterface, "UserSet1");
if( ! usersetWrite.fail() ){
usersetWrite << "Hello World\n";
}
usersetWrite.close();
IDevFileStream usersetRead;
usersetRead.open(pInterface, "UserSet1");
if( ! usersetRead.fail() ){
cout << usersetRead.rdbuf();
}
usersetRead.close();
The FileSelector feature selects the target file in the device for the Operation. The entries of this
enumeration define the names of all files in the device that can be accessed via the File Access.
FileOperationSelector specifies the operation to execute on the file.
FileOperationExecute command starts the selected operation execution.
FileOpenMode is a parameter for the Open operation and controls the access mode (Read, Write,
ReadWrite) in which the file is opened.
FileOperationStatus returns the status of the last operation executed on the file. This feature
must return Success if the operation is executed as requested.
FileOperationResult returns the number of bytes successfully read/written bytes during the
previous Read or Write operations.
FileSize returns the size of the file in bytes.
The data, that is read from or written to the device, is exchanged between the application and the
device through the FileAccessBuffer feature. This register mapped FileAccessBuffer must be
written with the target data before executing the Write operation using FileOperationExecute.
For Read operation, the data can be read from the FileAccessBuffer after the Read operation has
been executed.
FileAccessOffset controls the starting position of the access in the file.
FileAccessLength controls the number of bytes to transfer to or from the FileAccessBuffer
during the following Read or Write operation.
Altogether, the features FileSelector, FileAccessOffset and FileAccessLength control the
mapping between the device file storage and the FileAccessBuffer.
FileAccessOffset FileAccessLength
ODevFileStream
File A File B
15.1 FileAccessControl
Name FileAccessControl
Category Root
Level Recommended
Interface ICategory
Access Read
Unit -
Visibility Guru
Values -
15.2 FileSelector
Name FileSelector
Category FileAccessControl
Level Recommended
Interface IEnumeration
Access Read/(Write)
Unit -
Visibility Guru
Values UserSetDefault
UserSet1
UserSet2
UserSet3
…
LUTLuminance
LUTRed
LUTGreen
LUTBlue
…
The entries of this enumeration define the names of all files in the device that can be accessed via
the File access.
Possible values are:
• UserSetDefault: The default user set of the device.
• UserSet1: The first user set of the device.
• UserSet2: The second user set of the device.
• UserSet3: The third user set of the device.
• …
• LUTLuminance: The Luminance LUT of the camera.
• LUTRed: The Red LUT of the camera.
• LUTGreen: The Green LUT of the camera.
• LUTBlue: The Blue LUT of the camera.
• …
On top of the previous standard values, a device might also provide device-specific values.
15.3 FileOperationSelector
Name FileOperationSelector[FileSelector]
Category FileAccessControl
Level Recommended
Interface IEnumeration
Access Read/Write
Unit -
Visibility Guru
Values Open
Close
Read
Write
Delete
Selects the target operation for the selected file in the device. This Operation is executed when
the FileOperationExecute feature is called.
Possible values are:
• Open: Opens the file selected by FileSelector in the device. The access mode in which
the file is opened is selected by FileOpenMode.
• Close: Closes the file selected by FileSelector in the device.
• Read: Reads FileAccessLength bytes from the device storage at the file relative offset
FileAccessOffset into FileAccessBuffer.
• Write: Writes FileAccessLength bytes taken from the FileAccessBuffer into the device
storage at the file relative offset FileAccessOffset.
• Delete: Deletes the file selected by FileSelector in the device. Note that deleting a device
file should not remove the associated FileSelector entry to allow future operation on this
file.
15.4 FileOperationExecute
Name FileOperationExecute[FileSelector][FileOperationSelector]
Category FileAccessControl
Level Recommended
Interface ICommand
Access (Read)/Write
Unit -
Visibility Guru
Values -
15.5 FileOpenMode
Name FileOpenMode[FileSelector]
Category FileAccessControl
Level Recommended
Interface IEnumeration
Access Read/(Write)
Unit -
Visibility Guru
Values Read
Write
ReadWrite
15.6 FileAccessBuffer
Name FileAccessBuffer
Category FileAccessControl
Level Recommended
Interface IRegister
Access Read/(Write)
Unit -
Visibility Guru
Values Device-specific
Defines the intermediate access buffer that allows the exchange of data between the device file
storage and the application.
This register mapped FileAccessBuffer must be written with the target data before executing a
Write operation. For Read Operation, the data can be read from the FileAccessBuffer after the
Read operation has been executed. The effective data transfer is done upon
FileOperationExecute execution (See Figure 14-2).
15.7 FileAccessOffset
Name FileAccessOffset[FileSelector][FileOperationSelector]
Category FileAccessControl
Level Recommended
Interface IInteger
Access Read/(Write)
Unit B
Visibility Guru
Values ≥0
Controls the Offset of the mapping between the device file storage and the FileAccessBuffer.
The FileAccessOffset defines the offset in bytes of the FileAccessBuffer relative to the
beginning of the selected File (See Figure 14-2). This feature is available only when
FileOperationSelector is set to Read or Write.
15.8 FileAccessLength
Name FileAccessLength[FileSelector][FileOperationSelector]
Category FileAccessControl
Level Recommended
Interface IInteger
Access Read/Write
Unit B
Visibility Guru
Values ≥0
Controls the Length of the mapping between the device file storage and the FileAccessBuffer.
The FileAccessLength defines the number of bytes to transfer to or from the FileAccessBuffer
(See Figure 14-2). This feature is available only when FileOperationSelector is set to Read or
Write.
15.9 FileOperationStatus
Name FileOperationStatus[FileSelector][FileOperationSelector]
Category FileAccessControl
Level Recommended
Interface IEnumeration
Access Read
Unit -
Visibility Guru
Values Success
Failure
…
15.10 FileOperationResult
Name FileOperationResult[FileSelector][FileOperationSelector]
Category FileAccessControl
Level Recommended
Interface IInteger
Access Read
Unit -
Visibility Guru
Values -
Represents the file operation result. For Read or Write operations, the number of successfully
read/written bytes is returned.
15.11 FileSize
Name FileSize[FileSelector]
Category FileAccessControl
Level Recommended
Interface IInteger
Access Read
Unit B
Visibility Guru
Values ≥0
The Color Transformation chapter describes all features related to color Transformations in the
device.
The Color Transformation is a linear operation taking as input a triplet of Components (C0, C1,
C2) for a color pixel (Typicaly: Rin, Gin, Bin representing a RGB color pixel). This triplet is first
multiplied by a 3x3 matrix and then added to an offset triplet.
The equation is given by:
16.1 ColorTransformationControl
Name ColorTransformationControl
Category Root
Level Recommended
Interface ICategory
Access Read
Unit -
Visibility Expert
Values -
16.2 ColorTransformationSelector
Name ColorTransformationSelector
Category ColorTransformationControl
Level Optional
Interface IEnumeration
Access Read/Write
Unit -
Visibility Expert
Values RGBtoRGB
RGBtoYUV
Device-specific
Selects which Color Transformation module is controlled by the various Color Transformation
features.
Possible values are:
• RGBtoRGB: RGB to RGB color transformation.
• RGBtoYUV: RGB to YUV color transformation.
It is typically not available when a single Color Transformation module is supported.
16.3 ColorTransformationEnable
Name ColorTransformationEnable[ColorTransformationSelector]
Category ColorTransformationControl
Level Optional
Interface IBoolean
Access Read/Write
Unit -
Visibility Expert
Values True
False
16.4 ColorTransformationValueSelector
Name ColorTransformationValueSelector[ColorTransformationSelector]
Category ColorTransformationControl
Level Optional
Interface IEnumeration
Access Read/Write
Unit -
Visibility Expert
Values Gain00
Gain01
Gain02
Gain10
Gain11
Gain12
Gain20
Gain21
Gain22
Offset0
Offset1
Offset2
Selects the Gain factor or Offset of the Transformation matrix to access in the selected Color
Transformation module.
Possible values are:
• Gain00: Gain 0,0 of the transformation matrix.
• Gain01: Gain 0,1 of the transformation matrix.
• Gain02: Gain 0,2 of the transformation matrix.
• Gain10: Gain 1,0 of the transformation matrix.
• Gain11: Gain 1,1 of the transformation matrix.
• Gain12: Gain 1,2 of the transformation matrix.
• Gain20: Gain 2,0 of the transformation matrix.
• Gain21: Gain 2,1 of the transformation matrix.
• Gain22: Gain 2,2 of the transformation matrix.
• Offset0: Offset 0 of the transformation matrix.
• Offset1: Offset 1 of the transformation matrix.
• Offset2: Offset 2 of the transformation matrix.
16.5 ColorTransformationValue
Name ColorTransformationValue[ColorTransformationSelector]
[ColorTransformationValueSelector]
Category ColorTransformationControl
Level Optional
Interface IFloat
Access Read/Write
Unit -
Visibility Expert
Values Device-Specific
Represents the value of the selected Gain factor or Offset inside the Transformation matrix.
17 Action Control
The Action chapter describes all features related to Action Signals in the device.
Action Signals are a method to trigger actions in multiple devices at the same time (depending on
the specific transport layer). Action Signals are used in the device in the same way as e.g. digital
input lines.
One possible use for action signals is to raise a FrameStart trigger in multiple devices at the same
time.
On most transport layers Action Signals are implemented using broadcast protocol messages. To
allow a finegrained control which devices are allowed to react on the broadcasted action protocol
message, the features ActionDeviceKey, ActionGroupKey and ActionGroupMask define filter
conditions.
Each action protocol message contains an action device key, action group key and an action
group mask. If the device detects a match between this protocol information and one of the
actions selected by ActionSelector it raises the corresponding Action Signal.
See chapter 20.4 "Action Signal Examples" for typical uses cases.
17.1 ActionControl
Name ActionControl
Category Root
Level Recommended
Interface ICategory
Access Read
Unit -
Visibility Guru
Values -
17.2 ActionUnconditionalMode
Name ActionUnconditionalMode
Category ActionControl
Level Optional
Interface IEnumeration
Access Read/Write
Unit -
Visibility Guru
Values Off
On
Enables the unconditional action command mode where action commands are processed even
when the primary control channel is closed.
Possible values are:
• Off: Unconditional mode is disabled.
• On: Unconditional mode is enabled.
17.3 ActionDeviceKey
Name ActionDeviceKey
Category ActionControl
Level Optional
Interface IInteger
Access Write-Only
Unit -
Visibility Guru
Values ≥0
Provides the device key that allows the device to check the validity of action commands. The
device internal assertion of an action signal is only authorized if the ActionDeviceKey and the
action device key value in the protocol message are equal.
17.4 ActionQueueSize
Name ActionQueueSize
Category ActionControl
Level Optional
Interface IInteger
Access Read
Unit -
Visibility Guru
Values ≥0
Indicates the size of the scheduled action commands queue. This number represents the
maximum number of scheduled action commands that can be pending at a given point in time.
17.5 ActionSelector
Name ActionSelector
Category ActionControl
Level Optional
Interface IInteger
Access Read/Write
Unit -
Visibility Guru
Values >0
17.6 ActionGroupMask
Name ActionGroupMask[ActionSelector]
Category ActionControl
Level Optional
Interface IInteger
Access Read/Write
Unit -
Visibility Guru
Values ≥0
Provides the mask that the device will use to validate the action on reception of the action
protocol message.
The device asserts the selected Action signal only if:
• The selected ActionDeviceKey is equal to the action device key in the action protocol
message.
• The logical AND-wise operation of the action group mask in the action protocol message
against the selected ActionGroupMask is non-zero.
• The selected ActionGroupKey is equal to the action group key in the action protocol
message.
17.7 ActionGroupKey
Name ActionGroupKey[ActionSelector]
Category ActionControl
Level Optional
Interface IInteger
Access Read/Write
Unit -
Visibility Guru
Values ≥0
Provides the key that the device will use to validate the action on reception of the action protocol
message.
The device asserts the selected Action signal only if :
• The selected ActionDeviceKey is equal to the action device key in the action protocol
message.
• The logical AND-wise operation of the action group mask in the action protocol message
against the selected ActionGroupMask is non-zero.
• The selected ActionGroupKey is equal to the action group key in the action protocol
message.
18 Source Control
The Source Control chapter describes the features related to multi-source acquisition devices. An
example of such a multi-source device would be a camera with 2 independent sensors (visible and
infra red light) that would transmit their data on a single camera`s physical connector but would
have independent controllable features.
This section explains the general model for control of the acquisition on multi-source devices.
The section also presents the relation of the sources with other elements such as the region of
interest and the data transfer control module that can be found in more sophisticated multi-source
devices.
Source1 Region1
Source2
Device
Figure 18-1: Multi-Source multi-Region Device with data stream Transfer control.
Figure 18-1 above presents an example of a relatively complex device supporting multi-sources,
multi-regions with data stream transfer control. This device features two regions of interest for each
video source. In this particular example, both regions of interest from Source1 are streamed on the
same output stream channel, while a separate stream channel is used for each region of interest of
Source2. The three stream channels are transmitted out of the device using the same external Link
to the target Host System.
The features setting for this use case is presented below. The detailed description of the feature to
control the Sources can be found in section 18.2: "Source Control features below. The features for
Region of interest and image format and handling are documented in chapter 4: "Image Format
Control" and chapter 19: "Transfer Control" presents the features for explicit control of data
Transfer.
So for the particular use case illustrated in Figure 18-1 above, the features would be set to:
Source 1, Region 1:
SourceSelector = Source1
RegionSelector[SourceSelector] = Region1
RegionMode[SourceSelector][RegionSelector] = On
RegionDestination[SourceSelector][RegionSelector] = Stream0
Width[SourceSelector] [RegionSelector] = 320
Height[SourceSelector][RegionSelector] = 240
Source 1, Region 2:
SourceSelector = Source1
RegionSelector[SourceSelector] = Region2
RegionMode[SourceSelector][RegionSelector] = On
RegionDestination[SourceSelector][RegionSelector] = Stream0
Width[SourceSelector] [RegionSelector] = 420
Height[SourceSelector][RegionSelector] = 340
Source 1, Region 1 and 2, Transfer and Acquisition control:
TransferSelector = Stream0
TransferControlMode[TransferSelector] = UserControlled
TransferStreamChannel[TransferSelector] = 0
TransferStart[TransferSelector]
AcquisitionStart[SourceSelector]
…
AcquisitionStop[SourceSelector]
TransferStop[TransferSelector]
Source 2 Region 1:
SourceSelector = Source2
RegionSelector[SourceSelector] = Region1
RegionMode[SourceSelector][RegionSelector] = On
RegionDestination[SourceSelector][RegionSelector] = Stream1
Width[SourceSelector] [RegionSelector] = 220
Height[SourceSelector][RegionSelector] = 140
TransferSelector = Stream1
TransferControlMode[TransferSelector] = UserControlled
TransferStreamChannel[TransferSelector] = 0
Source 2 Region 2:
SourceSelector = Source2
RegionSelector[SourceSelector] = Region2
RegionMode[SourceSelector][RegionSelector] = On
RegionDestination[SourceSelector][RegionSelector] = Stream2
Width[SourceSelector] [RegionSelector] = 220
Height[SourceSelector][RegionSelector] = 330
TransferSelector = Stream2
TransferControlMode[TransferSelector] = UserControlled
TransferStreamChannel[TransferSelector] = 0
This section describes the features related to the devices that support multiple video sources that
are transmitted over a single link. The virtual Stream channels of a Link are used to transport the
different video sources over a common physical connection.
The main feature in this section is the source selector feature (SourceSelector). This feature
enables the features associated to a given video source to be controlled on a per video source
basis even if they pertain to different feature categories. For instance, it can enable a user to
independently set the Width feature (Image Format Control category) and the Gain feature
(Analog Control category) for the two sources supported by a given device.
An example of independent features setting for a dual source device would be:
SourceSelector = Source1
Width[SourceSelector] = 320
Gain[SourceSelector] = 60
AcquisitionStart[SourceSelector]
…
AcquisitionStop[SourceSelector]
SourceSelector = Source2
Width[SourceSelector] = 240
Gain[SourceSelector] = 90
AcquisitionStart[SourceSelector]
…
AcquisitionStop[SourceSelector]
18.3 SourceControl
Name SourceControl
Category Root
2012-10-25 Page 308 of 366
Version 2.0 Standard Features Naming Convention
Level Optional
Interface ICategory
Access Read
Unit -
Visibility Expert
Values -
18.4 SourceCount
Name SourceCount
Category SourceControl
Level Optional
Interface IInteger
Access Read/(Write)
Unit -
Visibility Expert
Values >= 1
18.5 SourceSelector
Name SourceSelector
Category SourceControl
Level Optional
Interface IEnumeration
Access Read/Write
Unit -
Visibility Expert
Values Source0 (If 0 based)
Source1
2012-10-25 Page 309 of 366
Version 2.0 Standard Features Naming Convention
Source2
…
All
Device-specific
The "All" value can be used to change the features of all the sources at the same time. For
example, this can be useful to simultaneously start and stop multiple acquisitions.
19 Transfer Control
The Transfer Control chapter describes the model and features related to the explicit control of
the transfer of the data acquired by a device.
A general model of the acquisition of images by a device and the role of the Transfer Control
module was already presented in the section 1.6 "Device Acquisition Model" and illustared in
detail in the section 18.1 "Sources Control model with Multi-Regions and Transfer".
So this chapter will concentrates only on describing the Transfer mechanism itself.
The Transfer Control Model section describes the features related to the transfer of data by the
device. It describes the basic Transfer model and the typical behavior of the device when sending
data to the outside.
An acquisition typically generates images (or frames). Those images can be preprocessed (Ex:
Bayer conversion) before transferrimg them out by the Device. In certain cases, those images can
also be transformed in other type of data (such as an intensity histogram) by an internal image
processing module. So it is possible that in addition to the original image acquired, a transformed
image or some related data also need to be transferred out of the device. In the following model,
it is considered that the captured images are transformed in different data blocks by an optional
image processing module. Those data blocks are then sent to a transfer module on different data
streams. The Transfer module will then transmit those data blocks externally on one or many
streaming channels. This typical acquisition data flow is represented in Figure 19-1: Acquisition
and Transfer data flow.
Figure 19-1: Acquisition and Transfer data flow.
Acquisition
Images
Image
Processing
Blocks
Transfer
Block Queue Block Queue
Block n+1
Block n
Block n+1
Block n
Streaming
channels
In summary, a transfer is the action of streaming data blocks to another device. Data blocks are
complex data structures that can represent images, image processing results or even files. The
transfer module is composed of one or many block Queue(s) and Streaming Controls section(s)
(see Figure 19-2.).
Data Blocks
Coming on a Stream
Transfer
Block Queue
Block n+1
Block n
Streaming Control
Streaming
Channel
Block Queue
A Block Queue is used to store data blocks for the time interval between its generation and its
transmission.
Streaming Control
The streaming control regulates the outgoing flow of data. The streaming can be in one of the
following states: Stopped, Stopping, Streaming and Paused. The transfer module always accepts
the new blocks of data from the image processing module regardless of the streaming state. The
transfer control features TransferStart, TransferStop, TransferAbort, TransferPause and
TransferResume allow the user to change the state of the streaming.
TransferStop or
TransferAbort or
TransferPause or TransferStart or
TransferResume TransferPause
TransferAbort
TransferStart TransferPause
TransferAbort or TransferResume
Transfer reach
TransferItemCount
Streaming
This section describes in detail the features related to the Transfer Control.
A detailed example of the usage of the Transfer Control features is presented in the section 18.1
"Sources Control model with Multi-Regions and Transfer".
19.2 TransferControl
Name TransferControl
Category Root
Level Recommended
Interface ICategory
Access ---
Visibility Expert
Unit -
Values -
19.3 TransferSelector
Name TransferSelector
Category TransferControl
Level Optional
Interface IEnumeration
Access Read/(Write)
Visibility Expert
Unit -
Values Stream0 (if 0 based),
Stream1,
Stream2,
…
All
Selects which stream transfers are currently controlled by the selected Transfer features.
Possible values are:
19.4 TransferControlMode
Name TransferControlMode[TransferSelector]
Category TransferControl
Level Recommended
Interface IEnumeration
Access Read/(Write)
Visibility Expert
Unit -
Values Basic
Automatic
UserControlled
If available, the TransferPause and TransferResume features are controlled by the user.
19.5 TransferOperationMode
Name TransferOperationMode[TransferSelector]
Category TransferControl
Level Optional
Interface IEnumeration
Access Read/(Write)
Visibility Expert
Unit -
Values Continuous
MultiBlock
• Continuous: Blocks of data are transferred continuously until stopped with the
TransferStop command.
• MultiBlock: The transfer of the blocks of data terminates automatically after the
transmission of TransferBlockCount or when an explicit TransferStop command is
received.
If this feature is not present, the transfer mode is assumed to be "Continuous".
19.6 TransferBlockCount
Name TransferBlockCount[TransferSelector]
Category TransferControl
Level Optional
Interface IInteger
Access Read/(Write)
Visibility Expert
Unit -
Values >0
Specifies the number of data Blocks that the device should stream before stopping. This feature is
only active if the TransferOperationMode is set to MultiBlock.
19.7 TransferBurstCount
Name TransferBurstCount
Category TransferControl
Level Optional
Interface IInteger
Access Read/Write
Visibility Expert
Unit -
Values ≥1
19.8 TransferQueueMaxBlockCount
Name TransferQueueMaxBlockCount[TransferSelector]
Category TransferControl
Level Optional
Interface IInteger
Access Read/(Write)
Visibility Expert
Unit -
Values >0
Controls the maximum number of data blocks that can be stored in the block queue of the
selected stream.
19.9 TransferQueueCurrentBlockCount
Name TransferQueueCurrentBlockCount[TransferSelector
]
Category TransferControl
Level Optional
Interface IInteger
Access Read
Visibility Expert
Unit -
Values -
19.10 TransferQueueMode
Name TransferQueueMode[TransferSelector]
Category TransferControl
Level Optional
Interface IEnumeration
Access Read/(Write)
Visibility Expert
Unit -
Values FirstInFirstOut
…
19.11 TransferStart
Name TransferStart[TransferSelector]
Category TransferControl
Level Optional
Interface ICommand
Access (Read)/Write
Visibility Expert
Unit -
Values -
Starts the streaming of data blocks out of the device. This feature must be available when the
TransferControlMode is set to "UserControled". If the TransferStart feature is not writable
(locked), the application should not start the transfer and should avoid using the feature until it
becomes writable again.
19.12 TransferStop
Name TransferStop[TransferSelector]
Category TransferControl
Level Optional
Interface ICommand
Access (Read)/Write
Visibility Expert
Unit -
Values -
Stops the streaming of data Block(s). The current block transmission will be completed. This
feature must be available when the TransferControlMode is set to "UserControlled".
19.13 TransferAbort
Name TransferAbort[TransferSelector]
Category TransferControl
Level Optional
Interface ICommand
Access (Read)/Write
Visibility Expert
Unit -
Values -
Aborts immediately the streaming of data block(s). Aborting the transfer will result in the lost of
the data that is present or currently entering in the block queue. However, the next new block
received will be stored in the queue and transferred to the host when the streaming is restarted. If
implemented, this feature should be available when the TransferControlMode is set to
"UserControlled".
19.14 TransferPause
Name TransferPause[TransferSelector]
Category TransferControl
Level Optional
Interface ICommand
Access (Read)/Write
Visibility Guru
Unit -
Values -
Pauses the streaming of data Block(s). Pausing the streaming will immediately suspend the
ongoing data transfer even if a block is partially transfered. The device will resume its
transmission at the reception of a TransferResume command.
19.15 TransferResume
Name TransferResume[TransferSelector]
Category TransferControl
Level Optional
Interface ICommand
Access (Read)/Write
Visibility Guru
Unit -
Values -
Resumes a data Blocks streaming that was previously paused by a TransferPause command.
19.16 TransferTriggerSelector
Name TransferTriggerSelector[TransferSelector]
Category TransferControl
Level Optional
Interface IEnumeration
Access Read/Write
Visibility Guru
Unit -
Values TransferStart
TransferStop
TransferAbort
TransferPause
TransferResume
TransferActive
TransferBurstStart
TransferBurstStop
19.17 TransferTriggerMode
Name TransferTriggerMode[TransferSelector][TransferTriggerSelector]
Category TransferControl
Level Recommended
Interface IEnumeration
Access Read/Write
Visibility Guru
Unit -
Values Off
On
19.18 TransferTriggerSource
Name TransferTriggerSource[
TransferTriggerSelector]
Category TransferControl
Level Optional
Interface IEnumeration
Access Read/Write
Visibility Guru
Unit -
Values Line0 (If 0 based), Line1, Line2, …
Counter0Start (If 0 based),
Counter1Start, Counter2Start, …
Counter1End, Counter2End, …
Timer0Start (If 0 based),
Timer1Start, Timer2Start, …
Timer1End, Timer2End, …
Action0 (If 0 based), Action1,
Action2, …
• Line0 (If 0 based), Line1, Line2, …: Specifies which physical line (or pin) and
associated I/O control block to use as external source for the transfer control trigger
signal.
• Counter0Start, Counter1Start, Counter2Start, …, Counter0End, Counter1End,
Counter2End, …: Specifies which of the Counter signal to use as internal source for the
selected trigger.
• Timer0Start, Timer1Start, Timer2Start, …, Timer0End, Timer1End, Timer2End,
…: Specifies which Timer signal to use as internal source for the selected trigger.
• Action0, Action1, Action2, …: Specifies which Action command to use as internal
source for the selected trigger.
19.19 TransferTriggerActivation
Name TransferTriggerActivation [
TransferTriggerSelector]
Category TransferControl
Level Optional
Interface IEnumeration
Access Read/Write
Visibility Guru
Unit -
Values RisingEdge
FallingEdge
AnyEdge
LevelHigh
LevelLow
• LevelLow: Specifies that the trigger is considered valid as long as the level of the source
signal is low. This can apply to TransferActive and TransferPause trigger.
19.20 TransferStatusSelector
Name TransferStatusSelector[TransferSelector]
Category TransferControl
Level Recommended
Interface IEnumeration
Access Read/Write
Visibility Guru
Unit -
Values Streaming
Paused
Stopping
Stopped
QueueOverflow
19.21 TransferStatus
Name TransferStatus[TransferStatusSelector]
Category TransferControl
Level Recommended
Interface IBool
Access Read
Visibility Guru
Unit -
2012-10-25 Page 325 of 366
Version 2.0 Standard Features Naming Convention
Values True
False
19.22 TransferComponentSelector
Name TransferComponentSelector[TransferSelector]
Category TransferControl
Level Optional
Interface IEnumeration
Access Read/Write
Visibility Guru
Unit -
Values Red
Green
Blue
All
Selects the color component for the control of the TransferStreamChannel feature.
Possible values are:
• Red: The TransferStreamChannel feature controls the index of the stream channel for
the streaming of the red plane of the planar pixel formats.
• Green: The TransferStreamChannel feature controls the index of the stream channel for
the streaming of the green plane of the planar pixel formats.
• Blue: The TransferStreamChannel feature controls the index of the stream channel for
the streaming of blue plane of the planar pixel formats.
• All: The TransferStreamChannel feature controls the index of the stream channel for
the streaming of all the planes of the planar pixel formats simultaneously or non planar
pixel formats.
This feature is only needed if the device supports planar pixel formats.
19.23 TransferStreamChannel
Name TransferStreamChannel[TransferSelector][Transfer
ComponentSelector]
Category TransferControl
Level Optional
Interface IInteger
Access Read/Write
Visibility Guru
Unit -
Values >0
Selects the streaming channel that will be used to transfer the selected stream of data. In general,
this feature can be omitted and the default streaming channel will be used.
/* Single Frame acquisition in Hardware trigger mode using the external I/O Line 3. */
AcquisitionMode = SingleFrame;
TriggerSelector = FrameStart;
TriggerMode = On;
TriggerActivation = RisingEdge;
TriggerSource = Line3;
AcquisitionStart();
/* Continuous acquisition in Hardware trigger mode. The Frame triggers are Rising Edge signals
coming from the physical Line 2. The Exposure time is 500us. An exposure end event is also
sent to the Host application after the exposure of each frame to signal that the inspected part
can be moved. The timestamp of the event is also read.
*/
AcquisitionMode = Continuous;
TriggerSelector = FrameStart;
TriggerMode = On;
TriggerActivation = RisingEdge;
TriggerSource = Line2;
ExposureMode = Timed;
ExposureTime = 500;
Register(Camera.EventExposureEnd, CallbackDataObject, CallbackFunctionPtr)
EventSelector = ExposureEnd;
EventNotification = On;
AcquisitionStart();
…
// In the callback of the ExposureEnd event, get the event timestamp:
Timestamp = EventExposureEndTimestamp;
…
AcquisitionStop();
/* Line Scan continuous acquisition with Hardware Frame and Line trigger. */
AcquisitionMode = Continuous;
TriggerSelector = FrameStart;
TriggerMode = On;
TriggerActivation = RisingEdge;
TriggerSource = Line1;
TriggerSelector = LineStart;
TriggerMode = On;
TriggerActivation = RisingEdge;
TriggerSource = Line2;
AcquisitionStart();
...
AcquisitionStop();
/* Frame Scan continuous acquisition with Hardware Frame trigger and the
Exposure duration controlled by the Trigger pulse width.
*/
AcquisitionMode = Continuous;
TriggerSelector = FrameStart;
TriggerMode = On;
TriggerActivation = RisingEdge;
TriggerSource = Line1;
ExposureMode = TriggerWidth;
AcquisitionStart();
...
AcquisitionStop();
/* Counts the number of rising edge triggers signals received on Line1 and the number of
Frame Start events in Hardware triggered Continuous acquisition to verify that no trigger
were missed.
*/
AcquisitionMode = Continuous;
TriggerSelector = FrameStart;
TriggerActivation = RisingEdge;
TriggerSource = Line1;
TriggerMode = On;
CounterSelector = Counter1;
CounterEventSource = Line1;
CounterEventActivation = RisingEdge;
CounterReset();
CounterSelector = Counter2;
CounterEventSource = FrameStart;
CounterReset();
AcquisitionStart();
…
AcquisitionStop();
CounterSelector = Counter1;
NbTrigger = CounterValue;
CounterSelector = Counter2;
NbFrameStart = CounterValue;
if (NbTrigger != NbFrameStart)
/* Generate a 200us Timer pulse (Strobe) delayed by 100 us on the physical output Line 2.
The Timer pulse is started using a trigger coming from physical input Line 1.
*/
TimerSelector = Timer1;
TimerDuration = 200;
TimerDelay = 100;
TimerTriggerSource = Line1;
TimerTriggerActivation = RisingEdge;
LineSelector = Line2;
LineMode = Output;
LineSource = Timer1Active;
ActionDeviceKey = 0x12345678;
ActionSelector = 1
ActionGroupKey = 0x1
ActionGroupMask = 0x1
AcquisitionStart();
LineSelector = Line2;
LineMode = Output;
LineSource = Timer1Active;
ActionDeviceKey = 0x12345678;
ActionSelector = Action3
ActionGroupKey = 0x1
ActionGroupMask = 0x7
21 Acknowledgements
The following companies have participated in the elaboration of the Standard Features Naming
Convention:
Company Represented by
Teledyne DALSA Eric Carey, Eric Bourbonnais, Peifang Zhou
SVS-Vistek Gerd Reichle
Stemmer Imaging Sascha Dorenbeck, Rupert Stelz, Martin Kersting
SICK IVP Mattias Johannesson
Pleora Technologies Francois Gobeil, Vincent Rowley
National Instruments Chris Graf, Tony Iglesias, Johann Scholtz, Eric Gross
MVTec Software Christoph Zierl
Matrox Imaging Stéphane Maurice
MathWorks Mark Jones
Leutron Vision Jan Becvar, Stefan Thommen
JAI Tue Moerk, Michael Krag, Ole Krogh Joergensen, Karsten Ingeman
Christensen
Euresys Jean-Michel Wintgens, Yves Joskin
e2v semiconductors Frédéric Mathieu
Basler Fritz Dierks, Alex Happe, Andreas Gaer, Thies Möller, Sven Seeger
AIA Jeff Fryman
22.1 Motivations
This appendix defines standard names to uniquely identify the geometrical properties of
most device`s sensor taps.
For example, the initial release of the Camera Link® standard didn`t include any
information about the geometrical properties of taps.
Frame grabbers are able to reconstruct on-the-fly the image from multi-tap cameras.
Camera manufacturer should clearly specify what geometry(ies) is (are) required. Frame
grabber manufacturer should also clearly specify what geometry(ies) is (are) supported.
The customer can then check the compatibility, and select the appropriate geometry for the
camera and the frame grabber.
Considering the limited amount of cases, a unique name is assigned for each geometry.
22.2.1.1 Restrictions
All zones have the same size.
Zones are not overlapping.
All zones have the same number of taps.
All taps are carrying the same amount of pixels.
Table 23-1 Tap geometrical properties – One, two and three taps
Geometry name Tap geometrical properties
Area- Line- Tap
X Start X End Step X Y Start Y End Step Y
scan scan
1X-1Y 1X Tap1 1 W 1 1 H 1
Tap1 1 W-1 2 1 H 1
1X2-1Y 1X2
Tap2 2 W 2 1 H 1
Tap1 1 W/2 1 1 H 1
2X-1Y 2X
Tap2 W/2+1 W 1 1 H 1
Tap1 1 W/2 1 1 H 1
2XE-1Y 2XE
Tap2 W W/2+1 -1 1 H 1
Tap1 W/2 1 -1 1 H 1
2XM-1Y 2XM
Tap2 W/2+1 W 1 1 H 1
Tap1 1 W 1 1 H-1 2
1X-1Y2
Tap2 1 W 1 2 H 2
Tap1 1 W 1 1 H/2 1
1X-2YE
Tap2 1 W 1 H H/2+1 -1
Tap1 1 W-2 3 1 H 1
1X3-1Y 1X3 Tap2 2 W-1 3 1 H 1
Tap3 3 W 3 1 H 1
2012-10-25 Page 342 of 366
Version 2.0 Standard Features Naming Convention
Tap 1
X1 X2 XW-1 XW
Y1 Y1 Y1 Y1
X1 X2 XW-1
Y2 Y2 Y2
Step Y = 1
X1 X2 XW-1 XW
YH-1 YH-1 YH-1 YH-1
X1 X2 XW-1 XW
YH YH YH YH
1 2 W-1 W
X1 X2 XW-1 XW
Y1 Y1 Y1 Y1
X1 X2 XW-1 XW
Y2 Y2 Y2 Y2
Step Y = 1
X1 X2 XW-1 XW
YH-1 YH-1 YH-1 YH-1
X1 X2 XW-1 XW
YH YH YH YH
1 2 W-1 W
2X-1Y (area-scan)
2 zones in X, 1 zone in Y.
Step X =
Tap 1
Step X =
Tap 2
XW/2+1
X1 X2 XW/2 Y1
XW-1 XW
Y1 Y1 Y1 Y1 Y1
X1 X2 XW-1 XW
Y2 Y2 Y2 Y2
Step Y =
X1 X2 XW-1 XW
YH 1 YH 1 YH 1 YH 1
XW/2+1
X1 X2 X W/2 YH
XW-1 XW
YH YH YH YH YH
2XE-1Y (area-scan)
2 zones in X with end extraction, 1 zone in Y.
Step X = 1 Step X = -1
Tap 1 Tap 2
X1 X2 XW-1 XW
YH-1 YH-1 YH-1 YH-1
X1 X2 X W/2 XW/2+1 XW-1 XW
YH YH YH YH YH YH
2XM-1Y (area-scan)
2 zones in X with middle extraction, 1 zone in Y.
Step X = -1
Tap 1
Step X = 1
Tap 2
X1 X2 X W-1 XW
YH-1 YH-1 YH-1 YH-1
X1 X2 X W/2 XW/2+1 XW-1 XW
YH YH YH YH YH YH
1X-1Y2 (area-scan)
1 zone in X, 1 zone in Y with 2 taps.
Step X = 1
Tap 1
Tap 2
X1 X2 XW-1 XW
Y1 Y1 Y1 Y1
X1 X2 XW-1 XW
Y2 Y2 Y2 Y2
Step Y = 2
X1 X2 XW-1 XW
YH-1 YH-1 YH-1 YH-1
X1 X2 XW-1 XW
YH YH YH YH
X1 X2 XW-1 XW
Step Y =
Y1 Y1 Y1 Y1
X1 X2 XW-1 XW
YH/2 YH/2 YH/2 YH/2
Step Y = -
X1 X2 XW-1 XW
YH/2+1 YH/2+1 YH/2+1 YH/2+1
X1 X2 XW-1 XW
YH YH YH YH
Tap 2
Step X =
Figure 23-12 Geometry 1X-2YE (area-scan)
X1 X2 X3 XW-2 XW-1 XW
Y Y Y Y1 Y1 Y1
X1 X2 X3 XW-2 XW-1 XW
Y2 Y2 Y2 Y Y2 Y2
Step Y =
X1 X2 X3 XW-2 XW-1 XW
Y 1 Y 1 Y 1 Y 1 Y 1 Y 1
X1 X2 X3 XW-2 XW-1 XW
Y Y Y Y Y Y
3X-1Y (area-scan)
3 zones in X, 1 zone in Y.
Step X =
Tap 1
Step X =
Tap 2
Step X =
Tap 3
XW/3+1 X2W/3+1
X1 XW/3 Y1
X2W/ Y1
XW
Y Y 3 Y1
X1 XW/3 X W/3+ X2W/ X 2W/3+ XW
Y Y 1 1 Y2
Step Y =
4X-1Y (area-scan)
4 zones in X, 1 zone in Y.
Step X =
Tap 1
Step X =
Tap 2 Step X =
Tap 3 Step X =
Tap 4
Tap 1
Step X = 1
Tap 2 Step X = 1
Tap 3 Step X = 1
Tap 4
2X2-1Y (area-scan)
2 zones in X with 2 taps, 1 zone in Y.
Step X =
Tap 1
Tap 2 Step X =
Tap 3
Tap 4
2X2E-1Y (area-scan)
2 zones in X with 2 taps and end extraction, 1 zone in Y.
Step X = Step X =
Tap 1 Tap 3
Step X Tap 4
2X2M-1Y (area-scan)
2 zones in X with 2 taps and middle extraction, 1 zone in Y.
Step X =
Tap 1
Tap 2
Step X =
Tap 3
Tap 4
1X2-2YE (area-scan)
1 zone in X with 2 taps, 2 zones in Y with end extraction.
Step X = 2
Tap 1
Tap 2
X1 X2 XW-1 XW
Y1 Y1 Y1 Y1
Step Y = 1
X1 X2 XW-1 XW
YH/2 YH/2 YH/2 YH/2
Step Y = -1
X1 X2 XW-1 XW
YH/2+1 YH/2+1 YH/2+1 YH/2+1
X1 X2 XW-1 XW
YH YH YH YH
Tap 3
Tap 4
Step X = 2
2X-2YE (area-scan)
2 zones in X, 2 zones in Y with end extraction.
Step X = 1
Tap 1
Step X = 1
Tap 2
X1 XW/2 XW/2+1 XW
Y1 Y1 Y1 Y1
Step Y = 1
X1 XW/2 XW/2+1 XW
YH/2 YH/2 YH/2 YH/2
Step Y = -1
X1 XW/2 XW/2+1 XW
YH/2+1 YH/2+1 YH/2+1 YH/2+1
X1 XW/2 XW/2+1 XW
YH YH YH YH
Tap 3
Step X = 1
Tap 4
Step X = 1
2XE-2YE (area-scan)
2 zones in X with end extraction, 2 zones in Y with end extraction.
Step X = Step X = -
Tap 1 Tap 2
X1 XW/2 X W/2+ XW
Step Y = Step Y =
Y1 Y1 1 Y1
X1 XW/2 X W/2+ XW
YH/2 YH/2 1 YH/2
X1 XW/2 X W/2+ XW
YH/2 1 Y / 1 YH/2 1
X1 XW/2 X W/2+ XW
Y YH 1 YH
Tap 3 Tap 4
Step X = Step X = -
Figure 23-29 Geometry 2XE-2YE (area-scan)
2XM-2YE (area-scan)
2 zones in X with middle extraction, 2 zones in Y with end extraction.
Step X = -1
Tap 1
Step X = 1
Tap 2
X1 XW/2 XW/2+1 XW
Y1 Y1 Y1 Y1
Step Y = 1
X1 XW/2 XW/2+1 XW
YH/2 YH/2 YH/2 YH/2
Step Y = -1
X1 XW/2 XW/2+1 XW
YH/2+1 YH/2+1 YH/2+1 YH/2+1
X1 XW/2 XW/2+1 XW
YH YH YH YH
Tap 3
Step X = -1
Tap 4
Step X = 1
1X8-1Y (area-scan)
1 zone in X with 8 taps, 1 zone in Y.
See similar geometries for building a drawing.
1X8 (line-scan)
1 zone in X with 8 taps.
See similar geometries for building a drawing.
8X-1Y (area-scan)
8 zones in X, 1 zone in Y.
See similar geometries for building a drawing.
8X (line-scan)
8 zones in X.
See similar geometries for building a drawing.
4X2-1Y (area-scan)
4 zones in X with 2 taps, 1 zone in Y.
See similar geometries for building a drawing.
4X2 (line-scan)
4 zones in X with 2 taps.
See similar geometries for building a drawing.
2X2E-2YE (area-scan)
2 zones in X with 2 taps, 2 zones in Y with 2 taps.
Step X = Step X =
Tap 1 Tap 3
Tap 2 Tap 4
X2
Y
X1 X2 XW
Y Y Y
X1 X2 X2 XW
Y Y Y YH/2+1
X1 X2 X W/2- XXW/22 X
W/2+ X
W/2+ XW-1 XW
Y Y 1 Y
Y 1 2 Y Y
X1 X2 X W/2- XXW/22 X
W/2+ X
W/2+ XW-1 XW
Y Y Y
Y Y Y
Tap 5 Tap 7
Tap 6 Tap 8
Step X = Step X =
Figure 23-31 Geometry 2X2E-2YE (area-scan)
1X10-1Y (area-scan)
1 zone in X with 10 taps, 1 zone in Y.
See similar geometries for building a drawing.
1X10 (line-scan)
1 zone in X with 10 taps.
See similar geometries for building a drawing.
10X-1Y (area-scan)
10 zones in X, 1 zone in Y.
See similar geometries for building a drawing.
10X (line-scan)
10 zones in X.
See similar geometries for building a drawing.