API Reference¶
The GenTL-Python Binding¶
Classes¶
-
class
genicam.gentl.
AbstractEventManager
(*args, **kwargs)¶ Bases:
genicam.gentl.IEventManager
Is a base class that is event manager classes should derive from.
Parameters: event (EventToken) – Set an EventToken
object.-
event_type
¶ Returns the event type of the event manager is monitoring.
Return type: EVENT_TYPE_LIST
-
flush_event_queue
()¶ Flushes all events in the event queue. This call empties the event data queue.
-
is_monitoring_event
()¶ Returns the truth value of the given proposition: This object is monitoring the target event.
Return type: bool
-
num_fired
¶ Returns the number of events those have been fired since the registration of the target event. A fired event is either still in the internal queue or already delivered to the user or discarded
flush_event_queue()
method.Return type: int
-
update_event_data
(timeout)¶ Updates its event data. Having called this method, its event data that is provided through its properties are overwritten with the latest one.
Parameters: timeout (int) – Set a timeout value in millisecond. Raises: TimeoutException
– If any event happens within the duration defined bytimeout
.
-
-
class
genicam.gentl.
BaseEventManagerGenApiEvent
(event_token)¶ Bases:
genicam.gentl.AbstractEventManager
Represents the event manager class which handles
EVENT_FEATURE_CHANGE
event.Parameters: event_token (EventToken) – Set an EventToken
object.-
event_id
¶ Returns string representation of the Event ID number in hexadecimal numerics with even number of digits and witout the leading
0x
.Return type: str
-
event_type
¶ Returns the event type of the event manager is monitoring.
Return type: EVENT_TYPE_LIST
-
flush_event_queue
()¶ Flushes all events in the event queue. This call empties the event data queue.
-
is_monitoring_event
()¶ Returns the truth value of the given proposition: This object is monitoring the target event.
Return type: bool
-
num_fired
¶ Returns the number of events those have been fired since the registration of the target event. A fired event is either still in the internal queue or already delivered to the user or discarded
flush_event_queue()
method.Return type: int
-
optional_data
¶ Returns the data addressable through the source GenApi node map event port, beginning of the data corresponding to address 0.
Return type: bytes
-
update_event_data
(timeout)¶ Updates its event data. Having called this method, its event data that is provided through its properties are overwritten with the latest one.
Parameters: timeout (int) – Set a timeout value in millisecond. Raises: TimeoutException
– If any event happens within the duration defined bytimeout
.
-
-
class
genicam.gentl.
Buffer
(data_stream, h_buffer, context)¶ Bases:
object
Is a proxy class of GenTL Buffer modules. You can manipulate a GenTL Buffer module through this object.
A
Buffer
object is created when a raw buffer is announced on aDataStream
object.-
clear
()¶ Clears the content of the raw buffer that has been attached to the
Buffer
object. Every data element of the raw buffer will be overwritten with value 0.
-
has_been_queued
()¶ Returns the truth value of the given proposition: The
Buffer
object has been queued in aDataStream
object.Return type: bool
-
has_new_data
()¶ Returns the truth value of the given proposition: The
Buffer
object has one or more newly delivered data.Return type: bool
-
is_acquiring
()¶ Returns the truth value of the given proposition: The
Buffer
object is currently being filled with data.Return type: bool
-
parts
¶ Returns a
list
object containingPart
objects. If the target doesn’t support multi-part buffer, the list object is notNone
but the length will be zero.Returns: A list
object containingPart
objects.Return type: (list)
-
payload_type
¶ Returns the payload type of the
Buffer
object that is defined as an entry ofPAYLOADTYPE_INFO_IDS
.Return type: PAYLOADTYPE_INFO_IDS
-
-
class
genicam.gentl.
BufferToken
(raw_buffer=None, context=None)¶ Bases:
object
Is used as a token to tell a
DataStream
object a raw buffer where the acquired data is filled in.Parameters: - raw_buffer (bytes) – Set a
bytes
object. It is used as a buffer where the acquired data is filled in. - context (object) – Set an arbitrary object which derives from Python’s built-in
object
class. This object is attached to the raw buffer and a client can get it back later once the announcedBuffer
object is delivered.
- raw_buffer (bytes) – Set a
-
class
genicam.gentl.
DataStream
(device)¶ Bases:
genicam.gentl.IEventCapableModule
Is a proxy class of GenTL Data Stream modules. You can manipulate a GenTL Data Stream module through this object.
-
announce_buffer
(buffer_token)¶ Announces a GenTL Consumer allocated buffer to the
DataStream
module to let it know the place where the acquired data is filled in.Note that announcing a buffer to a
DataStream
object does not mean that the buffer will be automatically queued for acquisition. This is done through a separate call to thequeue_buffer()
method.Parameters: buffer_token (BufferToken) – Set a BufferToken
object which holds abytes
object as raw buffer where you want to ask theDataStream
object fills acquired data in.
-
buffer_alignment
¶ Returns the alignment size in bytes of the buffer passed to the
announce_buffer()
method.Return type: int
-
buffer_announce_min
¶ Returns minimum number of buffers that clients should prepare for announcement. This minimum may change during runtime when changing parameters through the node map.
Return type: int Raises: NotAvailableException
– If theDataStream
object doesn’t support the feature.
-
close
()¶ Releases ownership of the target GenTL module.
-
defines_payload_size
()¶ Returns flag indicating that this data stream defines a payload size independent from the remote device. If
False
the size of the expected payload size is to be retrieved from the remote device. IfTrue
the expected payload size is to be inquired from theDataStream
object. In case the GenTL Producer does not support this command it is to interpreted asFalse
.Return type: bool
-
flush_buffer_queue
(operation)¶ Flushes the by operation defined internal buffer pool or queue to another one as defined by
ACQ_QUEUE_TYPE_LIST
.Parameters: operation (ACQ_QUEUE_TYPE_LIST) – Set a flush operation to perform as defined by ACQ_QUEUE_TYPE_LIST
.
-
id_
¶ Returns unique ID of the
DataStream
object.Return type: str
-
is_grabbing
()¶ Returns flag indicating whether the acquisition engine is started or not. This is independent from the acquisition status of the remote device.
Return type: bool
-
is_open
()¶ Returns the truth value of the following proposition: The proxy object has taken ownership of the corresponding GenTL module.
Return type: bool
-
num_chunks_max
¶ Returns maximum number of chunks to be expected in a buffer. This maximum must not change during runtime.
Return type: int Raises: NotAvailableException
– If theDataStream
object doesn’t support the feature.
-
num_queued
¶ Returns number of buffers in the input pool plus the buffer(s) currently being filled. This does not include the buffers in the output queue. The intention of this informational value is to prevent/early detect an underrun of the acquisition buffers.
Return type: int
-
num_started
¶ Returns number of frames started in the acquisition engine. This number is incremented every time a new buffer is started to be filled (data written to) regardless if the buffer is later delivered to the user or discarded for any reason. This number is initialized with 0 at at the time of the stream is opened. It is not reset until the stream is closed.
Return type: int
-
num_underrun
¶ Returns number of lost frames due to queue underrun. This number is initialized with zero at the time the stream is opened and incremented every time the data could not be acquired because there was no buffer in the input pool.
Return type: int
-
open
(dataStreamID)¶ Takes ownership of the GenTL Data Stream module.
Parameters: data_stream_id (str) – Set a data stream ID that you want to open. The available IDs are listed in an object that is returned by get_data_stream_ids()
property.
-
queue_buffer
(buffer, clear_buffer=True)¶ Queues a particular
Buffer
object for acquisition. ABuffer
object can be queued for acquisition any time after the buffer was announced (before or after the acquisition has been started) if it is not currently queued. Furthermore, a buffer which is already waiting to be delivered cannot be queued for acquisition. A queued buffer cannot be revoked. The order of the delivered buffers is not necessarily the same as the order in which they have been queued.Parameters:
-
register_event
(event_id)¶ Returns an
EventToken
object which monitors an event, specified byevent_id
, on the object.Parameters: event_id (EVENT_TYPE_LIST) – Set an event that you want to monitor. Return type: EventToken
-
start_acquisition
(*args)¶ Starts the acquisition engine on the host. Each call to
start_acquisition()
method must be accompanied by a call tostop_acquisition()
method.Parameters: - start_flags (ACQ_START_FLAGS_LIST) – Set a flag that you apply when starting acquisition.
- num_to_acquire (int) – Set the number of filled/delivered buffers after which the acquisition engine stops automatically. Buffers which are internally discarded or missed are not counted. If you omit passing this parameter, the acquisition continues until a call to
stop_acquisition()
method is called.
-
stop_acquisition
(stop_flags)¶ Stops the acquisition engine on the host. There must be a call to
stop_acquisition()
method accompanying each call tostart_acquisition()
method even though the stream already stopped because the number of frames to acquire was reached. This is also independent of the acquisition modes.Parameters: stop_flags (ACQ_STOP_FLAGS_LIST) – Set a flag that you apply when stopping acquisition. Returns: An error status code of the execution. Return type: GC_ERROR_LIST
-
-
class
genicam.gentl.
Device
(iface, device_id)¶ Bases:
genicam.gentl.IEventCapableModule
Is a proxy class of GenTL Device modules. You can manipulate a GenTL Device module through this object.
-
access_status
¶ Returns access status of the
Device
object.Return type: DEVICE_ACCESS_STATUS_LIST
-
close
()¶ Releases ownership of the target GenTL module.
-
create_data_stream
()¶ This is the factory method of the GenTL Data Stream module. Returns a
DataStream
object.Return type: DataStream
-
data_stream_ids
¶ Returns the data stream IDs of the
DataStream
objects those belong to theDevice
object.Returns: A list
object containingstr
objects.Return type: (list)
-
display_name
¶ Returns user readable name of the
Device
object. If this is not defined by the device this should be “VENDOR MODEL (ID)”.Return type: str
-
is_open
()¶ Returns the truth value of the following proposition: The proxy object has taken ownership of the corresponding GenTL module.
Return type: bool
-
open
(accessFlags)¶ Let you take ownership of the GenTL Device module.
Parameters: access_flags (DEVICE_ACCESS_FLAGS_LIST) – Set a flag that you apply when opening the Device
object.
-
register_event
(event_id)¶ Returns an
EventToken
object which monitors an event, specified byevent_id
, on the object.Parameters: event_id (EVENT_TYPE_LIST) – Set an event that you want to monitor. Return type: EventToken
-
-
class
genicam.gentl.
DeviceInfo
(iface, device_id)¶ Bases:
object
Is a class that contains information about a GenTL Device module.
This class can create a
Device
object.-
access_status
¶ Returns access status of the
Device
object.Return type: DEVICE_ACCESS_STATUS_LIST
-
create_device
()¶ This is the factory method of the GenTL Device module. Returns a
Device
object.Return type: Device
-
-
class
genicam.gentl.
EventManagerError
(event_token)¶ Bases:
genicam.gentl.AbstractEventManager
Represents the event manager class which handles
EVENT_ERROR
.Parameters: event_token (EventToken) – Set an EventToken
object.-
event_type
¶ Returns the event type of the event manager is monitoring.
Return type: EVENT_TYPE_LIST
-
flush_event_queue
()¶ Flushes all events in the event queue. This call empties the event data queue.
-
gc_error
¶ Returns the error code.
Return type: GC_ERROR_LIST
-
is_monitoring_event
()¶ Returns the truth value of the given proposition: This object is monitoring the target event.
Return type: bool
-
num_fired
¶ Returns the number of events those have been fired since the registration of the target event. A fired event is either still in the internal queue or already delivered to the user or discarded
flush_event_queue()
method.Return type: int
-
update_event_data
(timeout)¶ Updates its event data. Having called this method, its event data that is provided through its properties are overwritten with the latest one.
Parameters: timeout (int) – Set a timeout value in millisecond. Raises: TimeoutException
– If any event happens within the duration defined bytimeout
.
-
-
class
genicam.gentl.
EventManagerFeatureChange
(event_token)¶ Bases:
genicam.gentl.AbstractEventManager
Represents the event manager class which handles
EVENT_FEATURE_CHANGE
event.Parameters: event_token (EventToken) – Set an EventToken
object.-
event_type
¶ Returns the event type of the event manager is monitoring.
Return type: EVENT_TYPE_LIST
-
flush_event_queue
()¶ Flushes all events in the event queue. This call empties the event data queue.
-
is_monitoring_event
()¶ Returns the truth value of the given proposition: This object is monitoring the target event.
Return type: bool
-
num_fired
¶ Returns the number of events those have been fired since the registration of the target event. A fired event is either still in the internal queue or already delivered to the user or discarded
flush_event_queue()
method.Return type: int
-
update_event_data
(timeout)¶ Updates its event data. Having called this method, its event data that is provided through its properties are overwritten with the latest one.
Parameters: timeout (int) – Set a timeout value in millisecond. Raises: TimeoutException
– If any event happens within the duration defined bytimeout
.
-
-
class
genicam.gentl.
EventManagerFeatureInvalidate
(event_token)¶ Bases:
genicam.gentl.AbstractEventManager
Represents the event manager class which handles
EVENT_FEATURE_INVALIDATE
.Parameters: event_token (EventToken) – Set an EventToken
object.-
event_type
¶ Returns the event type of the event manager is monitoring.
Return type: EVENT_TYPE_LIST
-
flush_event_queue
()¶ Flushes all events in the event queue. This call empties the event data queue.
-
is_monitoring_event
()¶ Returns the truth value of the given proposition: This object is monitoring the target event.
Return type: bool
-
num_fired
¶ Returns the number of events those have been fired since the registration of the target event. A fired event is either still in the internal queue or already delivered to the user or discarded
flush_event_queue()
method.Return type: int
-
update_event_data
(timeout)¶ Updates its event data. Having called this method, its event data that is provided through its properties are overwritten with the latest one.
Parameters: timeout (int) – Set a timeout value in millisecond. Raises: TimeoutException
– If any event happens within the duration defined bytimeout
.
-
-
class
genicam.gentl.
EventManagerModule
(event_token)¶ Bases:
genicam.gentl.BaseEventManagerGenApiEvent
Represents the event manager class which handles
EVENT_MODULE
.Parameters: event_token (EventToken) – Set an EventToken
object.-
event_id
¶ Returns string representation of the Event ID number in hexadecimal numerics with even number of digits and witout the leading
0x
.Return type: str
-
event_type
¶ Returns the event type of the event manager is monitoring.
Return type: EVENT_TYPE_LIST
-
flush_event_queue
()¶ Flushes all events in the event queue. This call empties the event data queue.
-
is_monitoring_event
()¶ Returns the truth value of the given proposition: This object is monitoring the target event.
Return type: bool
-
num_fired
¶ Returns the number of events those have been fired since the registration of the target event. A fired event is either still in the internal queue or already delivered to the user or discarded
flush_event_queue()
method.Return type: int
-
optional_data
¶ Returns the data addressable through the source GenApi node map event port, beginning of the data corresponding to address 0.
Return type: bytes
-
update_event_data
(timeout)¶ Updates its event data. Having called this method, its event data that is provided through its properties are overwritten with the latest one.
Parameters: timeout (int) – Set a timeout value in millisecond. Raises: TimeoutException
– If any event happens within the duration defined bytimeout
.
-
-
class
genicam.gentl.
EventManagerNewBuffer
(event_token)¶ Bases:
genicam.gentl.AbstractEventManager
Represents the event manager class which handles
EVENT_NEW_BUFFER
.Parameters: event_token (EventToken) – Set an EventToken
object.-
event_type
¶ Returns the event type of the event manager is monitoring.
Return type: EVENT_TYPE_LIST
-
flush_event_queue
()¶ Flushes all events in the event queue. This call empties the event data queue.
-
is_monitoring_event
()¶ Returns the truth value of the given proposition: This object is monitoring the target event.
Return type: bool
-
num_fired
¶ Returns the number of events those have been fired since the registration of the target event. A fired event is either still in the internal queue or already delivered to the user or discarded
flush_event_queue()
method.Return type: int
-
parent
¶ Returns the parent object that this object belongs to.
Return type: IEventCapableModule
-
update_event_data
(timeout)¶ Updates its event data. Having called this method, its event data that is provided through its properties are overwritten with the latest one.
Parameters: timeout (int) – Set a timeout value in millisecond. Raises: TimeoutException
– If any event happens within the duration defined bytimeout
.
-
-
class
genicam.gentl.
EventManagerRemoteDevice
(event_token)¶ Bases:
genicam.gentl.BaseEventManagerGenApiEvent
Represents the event manager class which handles
EVENT_REMOTE_DEVICE
.Parameters: event_token (EventToken) – Set an EventToken
object.-
event_id
¶ Returns string representation of the Event ID number in hexadecimal numerics with even number of digits and witout the leading
0x
.Return type: str
-
event_type
¶ Returns the event type of the event manager is monitoring.
Return type: EVENT_TYPE_LIST
-
flush_event_queue
()¶ Flushes all events in the event queue. This call empties the event data queue.
-
is_monitoring_event
()¶ Returns the truth value of the given proposition: This object is monitoring the target event.
Return type: bool
-
num_fired
¶ Returns the number of events those have been fired since the registration of the target event. A fired event is either still in the internal queue or already delivered to the user or discarded
flush_event_queue()
method.Return type: int
-
optional_data
¶ Returns the data addressable through the source GenApi node map event port, beginning of the data corresponding to address 0.
Return type: bytes
-
update_event_data
(timeout)¶ Updates its event data. Having called this method, its event data that is provided through its properties are overwritten with the latest one.
Parameters: timeout (int) – Set a timeout value in millisecond. Raises: TimeoutException
– If any event happens within the duration defined bytimeout
.
-
-
class
genicam.gentl.
EventToken
(parent_module, event_id, h_event, h_event_src)¶ Bases:
object
Is used as a token to instantiate the corresponding event manager object.
The instantiated object is used to construct EventManager classes those derived from
AbstractEventManager
class.-
event_type
¶ Returns the assigned event type.
Return type: EVENT_TYPE_LIST
-
h_event
¶ Returns the event handle of the event.
Return type: EVENT_HANDLE
-
h_event_src
¶ Returns the module handle which is used to unregister the target event.
Return type: EVENTSRC_HANDLE
-
parent_module
¶ Returns its parent module.
Return type: IEventCapableModule
-
-
class
genicam.gentl.
GenTLProducer
(*args, **kwargs)¶ Bases:
object
Is a proxy class of a GenTL Producer. You can manipulate a GenTL Producer through this object.
To instantiate a
GenTLProducer
object, call its factory methodcreate_producer()
.This class supports
with
statement. It might be useful because it explicitly closes the CTI file when the object gets out of thewith
statement scope.-
close
()¶ Closes the CTI file that you have opened through this object.
-
static
create_producer
()¶ Creates and returns a
GenTLProducer
object.Do not forget to call its
close()
method or consider to usewith
statement to letGenTLProducer
objects release the CTI file. If you didn’t take any of the tricks the CTI file might be keeping held even if yourGenTLProducer
object had been already discarded.
-
create_system
()¶ Creates and returns the
System
object that belongs to the GenTL Producer.Return type: System
-
is_open
()¶ Returns the truth value of the following proposition: The
GenTLProducer
object has kept opening a CTI file.Return type: bool
-
-
class
genicam.gentl.
Helper
¶ Bases:
object
-
classmethod
format_path
(path)¶ Formats the path specified by
path
and returns it.
-
classmethod
get_cti_files
()¶ Having a proper environment variable, either
GENICAM_GENTL32_PATH
orGENICAM_GENTL64_PATH
, returns the listed GenTL Producers.Returns: A list of listed GenTL Producers. Return type: str
-
static
is_running_on_64_bit
()¶ Returns a truth value for a proposition: “the program is running on a 64-bit machine”.
Return type: bool
-
classmethod
-
class
genicam.gentl.
IEventCapableModule
(*args, **kwargs)¶ Bases:
object
Represents the event capable module which is defined by the GenTL Standard.
-
is_open
()¶ Returns the truth value of the following proposition: The proxy object has taken ownership of the corresponding GenTL module.
Return type: bool
-
register_event
(event_id)¶ Returns an
EventToken
object which monitors an event, specified byevent_id
, on the object.Parameters: event_id (EVENT_TYPE_LIST) – Set an event that you want to monitor. Return type: EventToken
-
-
class
genicam.gentl.
IEventManager
(*args, **kwargs)¶ Bases:
object
Is an interface class that is required to be realized by the classes those handle an event and its event data.
-
event_type
¶ Returns the event type of the event manager is monitoring.
Return type: EVENT_TYPE_LIST
-
flush_event_queue
()¶ Flushes all events in the event queue. This call empties the event data queue.
-
is_monitoring_event
()¶ Returns the truth value of the given proposition: This object is monitoring the target event.
Return type: bool
-
num_fired
¶ Returns the number of events those have been fired since the registration of the target event. A fired event is either still in the internal queue or already delivered to the user or discarded
flush_event_queue()
method.Return type: int
-
-
class
genicam.gentl.
Interface
(transport_layer, iface_id)¶ Bases:
genicam.gentl.IEventCapableModule
Is a proxy class of a GenTL Interface module. You can manipulate the GenTL Interface module through this object.
-
close
()¶ Releases ownership of the target GenTL module.
-
device_info_list
¶ Returns a
list
object containingDeviceInfo
objects.Returns: A list
object containingDeviceInfo
objects.Return type: (list)
-
is_open
()¶ Returns the truth value of the following proposition: The proxy object has taken ownership of the corresponding GenTL module.
Return type: bool
-
open
()¶ Tries to take ownership of the target GenTL Interface module through the proxy object.
-
register_event
(event_id)¶ Returns an
EventToken
object which monitors an event, specified byevent_id
, on the object.Parameters: event_id (EVENT_TYPE_LIST) – Set an event that you want to monitor. Return type: EventToken
-
tl_type
¶ Returns the transport layer technology that is supported by the
Interface
object.TODO: Fill rtype.
-
update_device_info_list
(timeout)¶ Updates the information about the available GenTL Device modules that belong to the GenTL Interface module. It will reflect the information in its
device_info_list
.Parameters: timeout (int) – Set a timeout value in millisecond. Returns: True
if the list content has been revised.False
otherwise.Return type: (bool) Raises: TimeoutException – If the execution expires the duration specified by timeout
.
-
-
class
genicam.gentl.
InterfaceInfo
(transport_layer, iface_id)¶ Bases:
object
Is a class that contains information about the corresponding GenTL Interface module.
You can create an
Interface
object from this object.-
tl_type
¶ Returns the transport layer technology that is supported by the corresponding
Interface
object.TODO: Fill rtype.
-
-
class
genicam.gentl.
Part
(buffer, part_index)¶ Bases:
object
-
data_format
¶ Returns the format of the individual items (such as pixels) in the buffer part. The interpretation of the format is specific to every data type (
BUFFER_PART_INFO_DATA_TYPE
), as specified in definitions of individualPARTDATATYPE_IDS
. The actual meaning of the data format depends on the namespace the format belongs to which can be inquired using theBUFFER_PART_INFO_DATA_FORMAT_NAMESPACE
command (although for the standardPARTDATATYPE_IDS
a recommended data format namespace is always specified).Return type: int
-
data_format_namespace
¶ Returns the format of the individual items (such as pixels) in the buffer part. The interpretation of the format is specific to every data type (
BUFFER_PART_INFO_DATA_TYPE
), as specified in definitions of individualPARTDATATYPE_IDS
. The actual meaning of the data format depends on the namespace the format belongs to which can be inquired using theBUFFER_PART_INFO_DATA_FORMAT_NAMESPACE
command (although for the standardPARTDATATYPE_IDS
a recommended data format namespace is always specified).Returns: Information refers to the constants defined by PIXELFORMAT_NAMESPACE_IDS
to allow interpretation ofBUFFER_PART_INFO_DATA_FORMAT
.Return type: PIXELFORMAT_NAMESPACE_IDS
-
data_offset
¶ Returns the offset address to the specified buffer part of the
Buffer
object.Return type: int
-
data_size
¶ Returns the size of the data intended to be written to the buffer last time it has been filled. This value is reset to 0 when the buffer is placed into the input buffer pool. If the buffer is incomplete the number still reports the full size of the original data including the lost parts. If the buffer is complete, the number equals to the size reported through
BUFFER_INFO_SIZE_FILLED
.Return type: int
-
data_type
¶ Returns the type of the data in given part. This information refers to the constants defined by
PARTDATATYPE_IDS
.Return type: PARTDATATYPE_IDS
-
delivered_image_height
¶ Returns the number of lines in the current buffer as delivered by the transport mechanism. For area scan type images this is usually the number of lines configured in the device. For variable size line scan images this number may be lower than the configured image height. This information refers for example to the information provided in the GigE Vision image stream data trailer. For other technologies this is to be implemented accordingly.
Return type: int
-
height
¶ Returns the height of the data in the buffer in number of pixels as configured. For variable size images this is the maximum height of the buffer. For example this information refers to the height entry in the GigE Vision image stream data leader. For other technologies this is to be implemented accordingly.
Return type: int
-
source_id
¶ Returns the identifier allowing to group data parts belonging to the same source (usually corresponding with the SourceSelector/ChunkSourceID features from SFNC). Parts marked with the same source_id can be mapped together. Parts carrying data from different ROI’s of the same source would typically be marked with the same source_id. It is not mandatory that source_id’s within a given buffer make a contiguous sequence of numbers starting with zero.
Note: for example with a dual-source 3D camera, the buffer can contain data parts carrying the 3D data and Confidence data corresponding to both of the two different sources. In this case the source ID helps to match the 3D and Confidence parts belonging together. This information refers for example to the information provided in the GigE Vision image stream multi-part data leader.
Return type: int
-
width
¶ Returns the width of the data in the buffer in number of pixels. This information refers for example to the width entry in the GigE Vision image stream data leader. For other technologies this is to be implemented accordingly.
Return type: int
-
x_offset
¶ Returns XOffset of the data in the buffer in number of pixels from the image origin to handle areas of interest. This information refers for example to the information provided in the GigE Vision image stream data leader. For other technologies this is to be implemented accordingly.
Return type: int
-
x_padding
¶ Returns XPadding of the data in the buffer in number of bytes. This information refers for example to the information provided in the GigE Vision image stream data leader. For other technologies this is may be implemented accordingly.
Return type: int
-
y_offset
¶ Returns YOffset of the data in the buffer in number of lines from the image origin to handle areas of interest. This information refers for example to the information provided in the GigE Vision image stream data leader. For other technologies this is to be implemented accordingly.
Return type: int
-
-
class
genicam.gentl.
Port
(*args, **kwargs)¶ Bases:
object
Represents the Port module which is defined by the GenTL Standard.
-
is_little_endian
()¶ Returns the flag indicating that the port’s data is little endian.
Return type: bool
-
read
(address, buffer)¶ Read an arbitrary size of data on the port.
Parameters: Returns: Return type:
-
tl_type
¶ Returns the transport layer technology that is supported by the
Port
object.Return type: str
-
-
class
genicam.gentl.
System
(producer)¶ Bases:
genicam.gentl.IEventCapableModule
Is a proxy class of a GenTL System module. You can manipulate a GenTL System module through this class object.
-
close
()¶ Releases the ownership of the GenTL System module that you have taken. You can’t manipulate the GenTL System module while you are not holding its ownership.
-
interface_info_list
¶ Returns the list of
InterfaceInfo
objects.Returns: A list
object containingInterfaceInfo
objects.Return type: (list)
-
is_open
()¶ Returns the truth value of the following proposition: The
System
object has taken the ownership of the target GenTL System module.Return type: bool
-
open
()¶ Let you take ownership of the GenTL System module. To moanipulate the GenTL System module, you have to take the ownership first.
-
register_event
(event_id)¶ Returns an
EventToken
object which monitors an event, specified byevent_id
, on the object.Parameters: event_id (EVENT_TYPE_LIST) – Set an event that you want to monitor. Return type: EventToken
-
-
class
genicam.gentl.
URLInfo
(port, url_index)¶ Bases:
object
-
file_name
¶ Returns the filename in case the scheme of the URL is
URL_SCHEME_FILE
or as a hint if the scheme isURL_SCHEME_LOCAL
.Return type: str
-
file_register_address
¶ Returns the register address of the XML-File in the device’s register map.
Return type: int
-
file_ver_subminor
¶ Returns the sub-minor version of the XML-file this URL refers to.
Return type: int
-
Exceptions¶
-
class
genicam.gentl.
AbortException
¶ Bases:
_gentl.GenericException
-
with_traceback
()¶ Exception.with_traceback(tb) – set self.__traceback__ to tb and return self.
-
-
class
genicam.gentl.
AccessDeniedException
¶ Bases:
_gentl.GenericException
-
with_traceback
()¶ Exception.with_traceback(tb) – set self.__traceback__ to tb and return self.
-
-
class
genicam.gentl.
BufferTooSmallException
¶ Bases:
_gentl.GenericException
-
with_traceback
()¶ Exception.with_traceback(tb) – set self.__traceback__ to tb and return self.
-
-
class
genicam.gentl.
BusyException
¶ Bases:
_gentl.GenericException
-
with_traceback
()¶ Exception.with_traceback(tb) – set self.__traceback__ to tb and return self.
-
-
class
genicam.gentl.
ClosedException
¶ Bases:
_gentl.GenericException
-
with_traceback
()¶ Exception.with_traceback(tb) – set self.__traceback__ to tb and return self.
-
-
class
genicam.gentl.
ErrorException
¶ Bases:
_gentl.GenericException
-
with_traceback
()¶ Exception.with_traceback(tb) – set self.__traceback__ to tb and return self.
-
-
class
genicam.gentl.
InvalidAddressException
¶ Bases:
_gentl.GenericException
-
with_traceback
()¶ Exception.with_traceback(tb) – set self.__traceback__ to tb and return self.
-
-
class
genicam.gentl.
InvalidHandleException
¶ Bases:
_gentl.GenericException
-
with_traceback
()¶ Exception.with_traceback(tb) – set self.__traceback__ to tb and return self.
-
-
class
genicam.gentl.
InvalidIdException
¶ Bases:
_gentl.GenericException
-
with_traceback
()¶ Exception.with_traceback(tb) – set self.__traceback__ to tb and return self.
-
-
class
genicam.gentl.
InvalidParameterException
¶ Bases:
_gentl.GenericException
-
with_traceback
()¶ Exception.with_traceback(tb) – set self.__traceback__ to tb and return self.
-
-
class
genicam.gentl.
IoException
¶ Bases:
_gentl.GenericException
-
with_traceback
()¶ Exception.with_traceback(tb) – set self.__traceback__ to tb and return self.
-
-
class
genicam.gentl.
InvalidBufferException
¶ Bases:
_gentl.GenericException
-
with_traceback
()¶ Exception.with_traceback(tb) – set self.__traceback__ to tb and return self.
-
-
class
genicam.gentl.
InvalidIndexException
¶ Bases:
_gentl.GenericException
-
with_traceback
()¶ Exception.with_traceback(tb) – set self.__traceback__ to tb and return self.
-
-
class
genicam.gentl.
InvalidValueException
¶ Bases:
_gentl.GenericException
-
with_traceback
()¶ Exception.with_traceback(tb) – set self.__traceback__ to tb and return self.
-
-
class
genicam.gentl.
LoadLibraryException
¶ Bases:
_gentl.GenericException
-
with_traceback
()¶ Exception.with_traceback(tb) – set self.__traceback__ to tb and return self.
-
-
class
genicam.gentl.
NoDataException
¶ Bases:
_gentl.GenericException
-
with_traceback
()¶ Exception.with_traceback(tb) – set self.__traceback__ to tb and return self.
-
-
class
genicam.gentl.
NotAvailableException
¶ Bases:
_gentl.GenericException
-
with_traceback
()¶ Exception.with_traceback(tb) – set self.__traceback__ to tb and return self.
-
-
class
genicam.gentl.
NotImplementedException
¶ Bases:
_gentl.GenericException
-
with_traceback
()¶ Exception.with_traceback(tb) – set self.__traceback__ to tb and return self.
-
-
class
genicam.gentl.
NotInitializedException
¶ Bases:
_gentl.GenericException
-
with_traceback
()¶ Exception.with_traceback(tb) – set self.__traceback__ to tb and return self.
-
-
class
genicam.gentl.
OutOfMemoryException
¶ Bases:
_gentl.GenericException
-
with_traceback
()¶ Exception.with_traceback(tb) – set self.__traceback__ to tb and return self.
-
-
class
genicam.gentl.
ParsingChunkDataException
¶ Bases:
_gentl.GenericException
-
with_traceback
()¶ Exception.with_traceback(tb) – set self.__traceback__ to tb and return self.
-
-
class
genicam.gentl.
ResourceExhaustedException
¶ Bases:
_gentl.GenericException
-
with_traceback
()¶ Exception.with_traceback(tb) – set self.__traceback__ to tb and return self.
-
Enumerations¶
-
class
genicam.gentl.
ACQ_QUEUE_TYPE_LIST
¶ Bases:
enum.IntEnum
Defines named constants from which to which queue/pool buffers are flushed.
-
ACQ_QUEUE_ALL_DISCARD
= 4¶ Discards all buffers in the input pool and the buffers in the output queue including buffers currently being filled so that no buffer is bound to any internal mechanism and all buffers may be revoked or requeued.
-
ACQ_QUEUE_ALL_TO_INPUT
= 2¶ Puts all buffers in the input pool. This is including those in the output buffer queue and the ones which are currently being filled and discard entries in the event data queue.
-
ACQ_QUEUE_CUSTOM_ID
= 1000¶ Starting value for GenTL Producer custom IDs which are implementation specific.
-
ACQ_QUEUE_INPUT_TO_OUTPUT
= 0¶ Flushes the buffers from the input pool to the output buffer queue and if necessary adds entries in the
EVENT_NEW_BUFFER
event data queue. The buffers currently being filled are not affected by this operation. This only applies to the mandatory default buffer handling mode. The fill state of a buffer can be inquired through the buffer info commandBUFFER_INFO_NEW_DATA
. This allows the GenTL Consumer to maintain all buffers without a second reference in the GenTL Consumer because all buffers are delivered through the new buffer event.
-
ACQ_QUEUE_OUTPUT_DISCARD
= 1¶ Discards all buffers in the output buffer queue and if necessary remove the entries from the event data queue.
-
ACQ_QUEUE_UNQUEUED_TO_INPUT
= 3¶ Puts all buffers that are neither in the input pool nor being currently filled nor in the output buffer queue in the input pool.
-
-
class
genicam.gentl.
ACQ_START_FLAGS_LIST
¶ Bases:
enum.IntEnum
Defines named constants for the acquisition engine.
-
ACQ_START_FLAGS_CUSTOM_ID
= 1000¶ Starting value for GenTL Producer custom IDs.
-
ACQ_START_FLAGS_DEFAULT
= 0¶ Default behavior.
-
-
class
genicam.gentl.
ACQ_STOP_FLAGS_LIST
¶ Bases:
enum.IntEnum
Defines named constants for the acquisition engine.
-
ACQ_STOP_FLAGS_CUSTOM_ID
= 1000¶ Starting value for GenTL Producer custom IDs which are implementation specific.
-
ACQ_STOP_FLAGS_DEFAULT
= 0¶ Stops the acquisition engine when the currently running tasks like filling a buffer are completed (default behavior).
-
ACQ_STOP_FLAGS_KILL
= 1¶ Stop the acquisition engine immediately. In case this results in a partially filled buffer the Producer will return the buffer through the regular mechanism to the user, indicating through the info function of that buffer that this buffer is not complete.
-
-
class
genicam.gentl.
BUFFER_INFO_CMD_LIST
¶ Bases:
enum.IntEnum
Defines named constants to retlieve the Buffer module related information.
-
BUFFER_INFO_BASE
= 0¶ Base address of the buffer memory as passed to the
announce_buffer()
function. This is also the address where the payload within the buffer starts.
-
BUFFER_INFO_CHUNKLAYOUTID
= 24¶ This information refers for example to the information provided in the GigE Vision image stream data leader. The chunk layout id serves as an indicator that the chunk layout has changed and the application should reparse the chunk layout in the buffer. When a chunk layout (availability or position of individual chunks) changes since the last buffer delivered by the device through the same stream, the device must change the chunk layout id. As long as the chunk layout remains stable, the camera must keep the chunk layout id intact. When switching back to a layout, which was already used before, the camera can use the same id again or use a new id. A chunk layout id value of 0 is invalid. It is reserved for use by cameras not supporting the layout id functionality. The algorithm used to compute the chunk layout id is left as quality of implementation. For other technologies this is to be implemented accordingly.
-
BUFFER_INFO_CONTAINS_CHUNKDATA
= 30¶ If this values is set to true it indicates that the payload transferred contains chunk data which may be parsed through a call to the
get_buffer_chunk_data()
method.
-
BUFFER_INFO_CUSTOM_ID
= 1000¶ Starting value for GenTL Producer custom IDs which are implementation specific.
-
BUFFER_INFO_DATA_LARGER_THAN_BUFFER
= 29¶ If this values is set to true it indicates that the payload transferred would not fit into the announced buffer and that therefore only parts of the payload or no payload (depending on the implementation of the GenTL Producer) is copied into the buffer.
-
BUFFER_INFO_DATA_SIZE
= 27¶ Size of the data intended to be written to the buffer last time it has been filled. This value is reset to 0 when the buffer is placed into the Input Buffer Pool. If the buffer is incomplete the number still reports the full size of the original data including the lost parts. If the buffer is complete, the number equals to the size reported through
BUFFER_INFO_SIZE_FILLED
.
-
BUFFER_INFO_DELIVERED_CHUNKPAYLOADSIZE
= 23¶ This information refers for example to the information provided in the GigE Vision image stream data trailer. For other technologies this is to be implemented accordingly.
-
BUFFER_INFO_DELIVERED_IMAGEHEIGHT
= 22¶ The number of lines in the current buffer as delivered by the transport mechanism. For area scan type images this is usually the number of lines configured in the device. For variable size linescan images this number may be lower than the configured image height. This information refers for example to the information provided in the GigE Vision image stream data trailer. For other technologies this is to be implemented accordingly.
-
BUFFER_INFO_FILENAME
= 25¶ Filename in case the payload contains a file. This information refers for example to the information provided in the GigE Vision image stream data leader. For other technologies this is to be implemented accordingly. Since this is GigE Vision related information and the filename in GigE Vision is UTF8 coded, this filename is also UTF8 coded.
-
BUFFER_INFO_FRAMEID
= 16¶ A sequentially incremented number of the frame. This information refers for example to the information provided in the GigE Vision image stream block id. For other technologies this is to be implemented accordingly. The wrap around of this number is transportation technology dependent. For GigE Vision it is (so far) 16bit wrapping to 1. Other technologies may implement a larger bit depth.
-
BUFFER_INFO_HEIGHT
= 11¶ Height of the data in the buffer in number of pixels as configured. For variable size images this is the maximum height of the buffer. For example this information refers to the height entry in the GigE Vision image stream data leader. For other technologies this is to be implemented accordingly.
-
BUFFER_INFO_IMAGEOFFSET
= 18¶ Offset of the image data from the beginning of the delivered buffer in bytes. Applies for example when delivering the image as part of chunk data or on technologies requiring specific buffer alignment.
-
BUFFER_INFO_IMAGEPRESENT
= 17¶ Flag to indicate if the current data in the buffer contains image data. This information refers for example to the information provided in the GigE Vision image stream data leader. For other technologies this is to be implemented accordingly.
-
BUFFER_INFO_IS_ACQUIRING
= 6¶ Flag to indicate that the buffer is currently being filled with data.
-
BUFFER_INFO_IS_INCOMPLETE
= 7¶ Flag to indicate that a buffer was filled but an error occurred during that process.
-
BUFFER_INFO_IS_QUEUED
= 5¶ If this flag is set to true the buffer is in the input pool, the buffer is currently being filled or the buffer is in the output buffer queue. In case this value is true the buffer is owned by the GenTL Producer and it can not be revoked.
-
BUFFER_INFO_NEW_DATA
= 4¶ Flag to indicate that the buffer contains new data since the last delivery.
-
BUFFER_INFO_PAYLOADTYPE
= 19¶ Payload type of the data. This information refers to the constants defined by
PAYLOADTYPE_INFO_IDS
.
-
BUFFER_INFO_PIXELFORMAT
= 20¶ Pixelformat of the data. This information refers for example to the information provided in the GigE Vision image stream data leader. For other technologies this is to be implemented accordingly. The interpretation of the pixel format depends on the namespace the pixel format belongs to. This can be inquired using the
BUFFER_INFO_PIXELFORMAT_NAMESPACE
command.
-
BUFFER_INFO_PIXELFORMAT_NAMESPACE
= 21¶ This information refers to the constants defined by
PIXELFORMAT_NAMESPACE_IDS
to allow interpretation ofBUFFER_INFO_PIXELFORMAT
.
-
BUFFER_INFO_PIXEL_ENDIANNESS
= 26¶ Endianness of the multi-byte pixel data in the buffer. This information refers to the constants defined by
PIXELENDIANNESS_IDS
.
-
BUFFER_INFO_SIZE
= 1¶ Size of the buffer in bytes.
-
BUFFER_INFO_SIZE_FILLED
= 9¶ Number of bytes written into the buffer the last time it has been filled. This value is reset to 0 when the buffer is placed into the Input Buffer Pool. If the buffer is incomplete (such as if there are missing packets), only the number of bytes successfully written to the buffer are reported. If the buffer is complete, the number equals to the size reported through
BUFFER_INFO_DATA_SIZE
.
-
BUFFER_INFO_TIMESTAMP
= 3¶ Time stamp the buffer was acquired. The unit is device/implementation dependent. In case the technology and/or the device does not support this for example under Windows a
QueryPerformanceCounter()
can be used.
-
BUFFER_INFO_TIMESTAMP_NS
= 28¶ Time stamp the buffer was acquired, in units of 1 ns (1 000 000 000 ticks per second). If the device is internally using another tick frequency than 1GHz, the GenTL Producer must convert the value to nanoseconds.
-
BUFFER_INFO_TLTYPE
= 8¶ Transport layer technology that is supported.
-
BUFFER_INFO_USER_PTR
= 2¶ Private data pointer casted to an integer provided at buffer announcement using
announce_buffer()
oralloc_and_announce_buffer()
by the GenTL Consumer. The pointer is attached to the buffer to allow attachment of user data to a buffer.
-
BUFFER_INFO_WIDTH
= 10¶ Width of the data in the buffer in number of pixels. This information refers for example to the width entry in the GigE Vision image stream data leader. For other technologies this is to be implemented accordingly.
-
BUFFER_INFO_XOFFSET
= 12¶ XOffset of the data in the buffer in number of pixels from the image origin to handle areas of interest. This information refers for example to the information provided in the GigE Vision image stream data leader. For other technologies this is to beimplemented accordingly.
-
BUFFER_INFO_XPADDING
= 14¶ XPadding of the data in the buffer in number of bytes. This information refers for example to the information provided in the GigE Vision image stream data leader. For other technologies this is may be implemented accordingly.
-
BUFFER_INFO_YOFFSET
= 13¶ YOffset of the data in the buffer in number of lines from the image origin to handle areas of interest. This information refers for example to the information provided in the GigE Vision image stream data leader. For other technologies this is to be implemented accordingly.
-
BUFFER_INFO_YPADDING
= 15¶ YPadding of the data in the buffer in number of bytes. This information refers for example to the information provided in the GigE Vision image stream data leader. For other thechnologies this may be implemented accordingly.
-
-
class
genicam.gentl.
BUFFER_PART_INFO_CMD_LIST
¶ Bases:
enum.IntEnum
Defines named constants to retrieve the Buffer module related information.
In case an item of the enumeration is not available or not implemented these functions must return the appropriate error return value.
-
BUFFER_PART_INFO_BASE
= 0¶ Base address of the buffer part memory. This is the address where the valid buffer part data start, not considering any padding between data parts or buffer alignment.
-
BUFFER_PART_INFO_CUSTOM_ID
= 1000¶ Starting value for GenTL Producer custom IDs which are implementation specific.
-
BUFFER_PART_INFO_DATA_FORMAT
= 3¶ Format of the individual items (such as pixels) in the buffer part. The interpretation of the format is specific to every data type (
BUFFER_PART_INFO_DATA_TYPE
), as specified in definitions of individualPARTDATATYPE_IDS
. The actual meaning of the data format depends on the namespace the format belongs to which can be inquired using theBUFFER_PART_INFO_DATA_FORMAT_NAMESPACE
command (although for the standardPARTDATATYPE_IDS
a recommended data format namespace is always specified).
-
BUFFER_PART_INFO_DATA_FORMAT_NAMESPACE
= 4¶ This information refers to the constants defined by
PIXELFORMAT_NAMESPACE_IDS
to allow interpretation ofBUFFER_PART_INFO_DATA_FORMAT
.
-
BUFFER_PART_INFO_DATA_SIZE
= 1¶ Size of the buffer part in bytes. Actual size of the data within this buffer part should be reported. Eventual padding between buffer parts is not included. In case of variable payload type only the size of valid data within the buffer part is reported.
-
BUFFER_PART_INFO_DATA_TYPE
= 2¶ Type of the data in given part. This information refers to the constants defined by
PARTDATATYPE_IDS
.
-
BUFFER_PART_INFO_DELIVERED_IMAGEHEIGHT
= 11¶ The number of lines in the current buffer part as delivered by the transport mechanism. For area scan type images this is usually the number of lines configured in the device. For variable size linescan images this number may be lower than the configured image height. This information refers for example to the information provided in the GigE Vision image stream data trailer. For other technologies this is to be implemented accordingly.
-
BUFFER_PART_INFO_HEIGHT
= 6¶ Height of the data in the buffer part in number of pixels. If the information is not applicable to given data type, the query should result in
GC_ERR_NOT_AVAILABLE
.
-
BUFFER_PART_INFO_SOURCE_ID
= 10¶ for example with a dual-source 3D camera, the buffer can contain data parts carrying the 3D data and Confidence data corresponding to both of the two different sources. In this case the source ID helps to match the 3D and Confidence parts belonging together. This information refers for example to the information provided in the GigE Vision image stream multi-part data leader.
Type: Identifier allowing to group data parts belonging to the same source (usually corresponding with the SourceSelector/ChunkSourceID features from SFNC) Parts marked with the same source_id can be pixelmapped together. Parts carrying data from different ROI’s of the same source would typically be marked with the same source_id. It is not mandatory that source_id’s within a given buffer make a contiguous sequence of numbers starting with zero. Note
-
BUFFER_PART_INFO_WIDTH
= 5¶ Width of the data in the buffer part in number of pixels. If the information is not applicable to given data type, the query should result in
GC_ERR_NOT_AVAILABLE
.
-
BUFFER_PART_INFO_XOFFSET
= 7¶ XOffset of the data in the buffer part in number of pixels from the image origin to handle areas of interest. If the information is not applicable to given data type, the query should result in
GC_ERR_NOT_AVAILABLE
.
-
BUFFER_PART_INFO_XPADDING
= 9¶ XPadding of the data in the buffer part in number of pixels. If the information is not applicable to given data type, the query should result in
GC_ERR_NOT_AVAILABLE
.
-
BUFFER_PART_INFO_YOFFSET
= 8¶ YOffset of the data in the buffer part in number of pixels from the image origin to handle areas of interest. If the information is not applicable to given data type, the query should result in
GC_ERR_NOT_AVAILABLE
.
-
-
class
genicam.gentl.
DEVICE_ACCESS_FLAGS_LIST
¶ Bases:
enum.IntEnum
Defines named constants how a device is to be opened.
-
DEVICE_ACCESS_CONTROL
= 3¶ Opens the device in a way that other hosts/processes can have read only access to the device. Device access level is read/write for this process.
-
DEVICE_ACCESS_CUSTOM_ID
= 1000¶ Starting value for GenTL Producer custom IDs which are implementation specific.
-
DEVICE_ACCESS_EXCLUSIVE
= 4¶ Open the device in a way that only this host/process can have access to the device. Device access level is read/write for this process.
-
DEVICE_ACCESS_NONE
= 1¶ This either means that the device is not open because it was not opened before or the access to it was denied.
-
DEVICE_ACCESS_READONLY
= 2¶ Opens the device read only. All Port functions can only read from the device.
-
DEVICE_ACCESS_UNKNOWN
= 0¶ Not used in a command. Can be used to initialize a variable to query that information.
-
-
class
genicam.gentl.
DEVICE_ACCESS_STATUS_LIST
¶ Bases:
enum.IntEnum
Defines named constants used to retrieve the current accessibility of the device.
-
DEVICE_ACCESS_STATUS_BUSY
= 4¶ The device is already owned/opened by another entity.
-
DEVICE_ACCESS_STATUS_CUSTOM_ID
= 1000¶ Starting value for custom IDs which are implementation specific.
-
DEVICE_ACCESS_STATUS_NOACCESS
= 3¶ The device is seen be the producer but is not available for access because it is not reachable.
-
DEVICE_ACCESS_STATUS_OPEN_READONLY
= 6¶ The device is already owned/opened by this GenTL Producer with RO access.
-
DEVICE_ACCESS_STATUS_OPEN_READWRITE
= 5¶ The device is already owned/opened by this GenTL Producer with RW access.
-
DEVICE_ACCESS_STATUS_READONLY
= 2¶ The device is available to be opened for Read access but is currently not opened.
-
DEVICE_ACCESS_STATUS_READWRITE
= 1¶ The device is available to be opened for Read/Write access but it is currently not opened.
-
DEVICE_ACCESS_STATUS_UNKNOWN
= 0¶ The current availability of the device is unknown.
-
-
class
genicam.gentl.
DEVICE_INFO_CMD_LIST
¶ Bases:
enum.IntEnum
Defines named constants to retrieve the Device module related information.
-
DEVICE_INFO_ACCESS_STATUS
= 5¶ Gets the access status the GenTL Producer has on the device.
-
DEVICE_INFO_CUSTOM_ID
= 1000¶ Starting value for GenTL Producer custom IDs which are implementation specific.
-
DEVICE_INFO_DISPLAYNAME
= 4¶ User readable name of the device. If this is not defined by the device this should be “VENDOR MODEL (ID)”.
-
DEVICE_INFO_ID
= 0¶ Unique ID of the device.
-
DEVICE_INFO_MODEL
= 2¶ Device model name.
-
DEVICE_INFO_SERIAL_NUMBER
= 7¶ Serial number of the device in string format.
-
DEVICE_INFO_TIMESTAMP_FREQUENCY
= 9¶ Tick frequency of the device’s timestamp counter in ticks per second.
-
DEVICE_INFO_TLTYPE
= 3¶ Transport layer technology that is supported.
-
DEVICE_INFO_USER_DEFINED_NAME
= 6¶ String containing the user defined name of the device.
-
DEVICE_INFO_VENDOR
= 1¶ Device vendor name.
-
DEVICE_INFO_VERSION
= 8¶ Device version in string format.
-
-
class
genicam.gentl.
EVENT_DATA_INFO_CMD_LIST
¶ Bases:
enum.IntEnum
Defines named constants to retrieve the Event Data information.
-
EVENT_DATA_CUSTOM_ID
= 1000¶ Starting value for GenTL Producer custom IDs which are implementation specific.
-
EVENT_DATA_ID
= 0¶ Attribute in the event data to identify the object or feature the event refers to. This can be, e.g., the error code for an error event or the feature name for GenApi related events.
-
EVENT_DATA_NUMID
= 2¶ Attribute in the event data to identify the object or feature the event refers to.
-
EVENT_DATA_VALUE
= 1¶ Defines additional data to an ID. This can be, e.g., the error message for an error event.
-
-
class
genicam.gentl.
EVENT_INFO_CMD_LIST
¶ Bases:
enum.IntEnum
Defines named constants to retrieve the Event module realated information.
-
EVENT_EVENT_TYPE
= 0¶ Event type of the event handle.
-
EVENT_INFO_CUSTOM_ID
= 1000¶ Starting value for GenTL Producer custom IDs which are implementation specific.
-
EVENT_INFO_DATA_SIZE_MAX
= 4¶ Maximum size in bytes of the information output buffer.
-
EVENT_NUM_FIRED
= 2¶ Number of events that were fired since the registration of the event through a call to
register_event()
method. A fired event is either still in the internal queue or already delivered to the user or discarded throughflush_event_queue()
.
-
EVENT_NUM_IN_QUEUE
= 1¶ Number of events in the event data queue.
-
EVENT_SIZE_MAX
= 3¶ Maximum size in bytes of the event data provided by the event.
-
-
class
genicam.gentl.
EVENT_TYPE_LIST
¶ Bases:
enum.IntEnum
Defines known event types that can be registered on certain modules.
-
EVENT_CUSTOM_ID
= 1000¶ Starting value for GenTL Producer custom events which are implementation specific.
-
EVENT_ERROR
= 0¶ Notification on module errors.
-
EVENT_FEATURE_CHANGE
= 3¶ Notification if the GenTL Producer driver wants to manually set a feature in the GenICam GenApi instance using the module.
-
EVENT_FEATURE_INVALIDATE
= 2¶ Notification if a feature was changed by the GenTL Producer driver and thus needs to be invalidated in the GenICam GenApi instance using the module.
-
EVENT_MODULE
= 5¶ Notification that one GenTL Producer module wants to inform the GenICam GenApi instance of this module that a GenApi compatible event was fired.
-
EVENT_NEW_BUFFER
= 1¶ Notification on newly filled buffers.
-
EVENT_REMOTE_DEVICE
= 4¶ Notification if the GenTL Producer wants to inform the GenICam GenApi instance of the remote device that a GenApi compatible event was fired.
-
-
class
genicam.gentl.
GC_ERROR_LIST
¶ Bases:
enum.IntEnum
Defines status code of the last execution.
-
GC_ERR_ABORT
= -1012¶ An operation has been aborted before it could be completed. For example a wait operation through
update_event_data()
method has been terminated via a call toflush_event_queue()
method.
-
GC_ERR_ACCESS_DENIED
= -1005¶ Requested operation is not allowed; e.g., a remote device is opened by another client.
-
GC_ERR_BUFFER_TOO_SMALL
= -1016¶ A provided buffer is too small to receive the expected amount of data. This may affect acquisition buffers in the Data Stream module if the buffers are smaller than the expected payload size but also buffers passed to any other function of the GenTL Producer interface to retrieve information or IDs.
-
GC_ERR_BUSY
= -1022¶ The required operation cannot be executed because the responsible module/entity is busy executing actions that cannot be performed concurrently with the requested operation.
-
GC_ERR_CUSTOM_ID
= -10000¶ Any error smaller or equal than -10000 is implementation specific.
-
GC_ERR_ERROR
= -1001¶ Unspecified runtime error.
-
GC_ERR_INVALID_ADDRESS
= -1015¶ A given address is out of range or invalid for internal reasons.
-
GC_ERR_INVALID_BUFFER
= -1013¶ The GenTL Consumer has not announced enough buffers to start the acquisition in the currently active acquisition mode.
-
GC_ERR_INVALID_HANDLE
= -1006¶ Given handle does not support the operation; e.g., function call on wrong handle or NULL pointer.
-
GC_ERR_INVALID_ID
= -1007¶ ID could not be connected to a resource; e.g., a device with the given ID is currently not available.
-
GC_ERR_INVALID_INDEX
= -1017¶ A provided index referencing a Producer internal object is out of bounds.
-
GC_ERR_INVALID_PARAMETER
= -1009¶ One of the parameter given was not valid or out of range.
-
GC_ERR_INVALID_VALUE
= -1019¶ A register write function was trying to write an invalid value.
-
GC_ERR_IO
= -1010¶ Communication error has occurred; e.g., a read or write operation to a remote device failed.
-
GC_ERR_NOT_AVAILABLE
= -1014¶ Resource or information is not available at a given time in a current state.
-
GC_ERR_NOT_IMPLEMENTED
= -1003¶ Requested operation not implemented.
-
GC_ERR_NOT_INITIALIZED
= -1002¶ Module or resource not initialized.
-
GC_ERR_NO_DATA
= -1008¶ The function has no data to work on.
-
GC_ERR_OUT_OF_MEMORY
= -1021¶ The system and/or other hardware in the system (frame grabber) ran out of memory.
-
GC_ERR_PARSING_CHUNK_DATA
= -1018¶ An error occurred parsing a buffer containing chunk data.
-
GC_ERR_RESOURCE_EXHAUSTED
= -1020¶ A requested resource is exhausted. This is a rather general error which might for example refer to a limited number of available handles being available.
-
GC_ERR_RESOURCE_IN_USE
= -1004¶ Requested resource is already in use.
-
GC_ERR_SUCCESS
= 0¶ Operation was successful; no error occurred.
-
GC_ERR_TIMEOUT
= -1011¶ An operation’s timeout time expired before it could be completed.
-
-
class
genicam.gentl.
INFO_DATATYPE_LIST
¶ Bases:
enum.IntEnum
Defines the data types possible for the various Info functions. The data type itself may define its size.
-
INFO_DATATYPE_BOOL8
= 11¶ Boolean value occupying 8 bit. 0 for false and anything for true.
-
INFO_DATATYPE_BUFFER
= 13¶ Like a
INFO_DATATYPE_STRING
but with arbitrary data and no 0 termination.
-
INFO_DATATYPE_CUSTOM_ID
= 1000¶ Starting value for Custom IDs which are implementation specific.
-
INFO_DATATYPE_FLOAT64
= 9¶ Signed 64 bit floating point number.
-
INFO_DATATYPE_INT16
= 3¶ Signed 16 bit integer.
-
INFO_DATATYPE_INT32
= 5¶ Signed 32 bit integer.
-
INFO_DATATYPE_INT64
= 7¶ Signed 64 bit integer.
-
INFO_DATATYPE_PTR
= 10¶ Pointer type (void*). Size is platform dependent (32 bit on 32 bit platforms)
-
INFO_DATATYPE_PTRDIFF
= 14¶ The type ptrdiff_t is a type that can hold the result of subtracting two pointers.
-
INFO_DATATYPE_SIZET
= 12¶ Platform dependent unsigned integer (32 bit on 32 bit platforms)
-
INFO_DATATYPE_STRING
= 1¶ 0-terminated C string (encoding according to the
TL_INFO_CHAR_ENCODING
info command).
-
INFO_DATATYPE_STRINGLIST
= 2¶ Concatenated
INFO_DATATYPE_STRING
list. End of list is signaled with an additional 0.
-
INFO_DATATYPE_UINT16
= 4¶ Unsigned 16 bit integer.
-
INFO_DATATYPE_UINT32
= 6¶ Unsigned 32 bit integer.
-
INFO_DATATYPE_UINT64
= 8¶ Unsigned 64 bit integer.
-
INFO_DATATYPE_UNKNOWN
= 0¶ Unknown data type. This value is never returned from a function but can be used to initialize the variable to inquire the type.
-
-
class
genicam.gentl.
INTERFACE_INFO_CMD_LIST
¶ Bases:
enum.IntEnum
Defines named constants to retrieve the Interface module related information.
-
INTERFACE_INFO_CUSTOM_ID
= 1000¶ Starting value for GenTL Producer custom IDs which are implementation specific.
-
INTERFACE_INFO_DISPLAYNAME
= 1¶ User readable name of the interface.
-
INTERFACE_INFO_ID
= 0¶ Unique ID of the interface.
-
INTERFACE_INFO_TLTYPE
= 2¶ Transport layer technology that is supported.
-
-
class
genicam.gentl.
PARTDATATYPE_IDS
¶ Bases:
enum.IntEnum
Defines named constants to give a hint on the data type to be expected in the buffer part.
-
PART_DATATYPE_2D_IMAGE
= 1¶ Color or monochrome (2D) image. This part carries all the pixel data of given image (even if the image is represented by a single-plane pixel format). It is recommended to use
PIXELFORMAT_NAMESPACE_PFNC_32BIT
data format with this data type whenever possible.
-
PART_DATATYPE_2D_PLANE_BIPLANAR
= 2¶ Single color plane of a planar (2D) image. The data should be linked with the other color planes to get the complete image. The complete image consists of 2 planes. The planes of a given planar image must be placed as consecutive parts within the buffer. It is recommended to use
PIXELFORMAT_NAMESPACE_PFNC_32BIT
data format with this data type whenever possible.
-
PART_DATATYPE_2D_PLANE_QUADPLANAR
= 4¶ Single color plane of a planar (2D) image. The data should be linked with the other color planes to get the complete image. The complete image consists of 4 planes. The planes of a given planar image must be placed as consecutive parts within the buffer. It is recommended to use
PIXELFORMAT_NAMESPACE_PFNC_32BIT
data format with this data type whenever possible.
-
PART_DATATYPE_2D_PLANE_TRIPLANAR
= 3¶ Single color plane of a planar (2D) image. The data should be linked with the other color planes to get the complete image. The complete image consists of 3 planes. The planes of a given planar image must be placed as consecutive parts within the buffer. It is recommended to use
PIXELFORMAT_NAMESPACE_PFNC_32BIT
data format with this data type whenever possible.
-
PART_DATATYPE_3D_IMAGE
= 5¶ 3D image (pixel coordinates). This part carries all the pixel data of given image (even if the image is represented by a single-plane pixel format, for example when transferring the depth map only). It is recommended to use
PIXELFORMAT_NAMESPACE_PFNC_32BIT
data format with this data type whenever possible.
-
PART_DATATYPE_3D_PLANE_BIPLANAR
= 6¶ Single plane of a planar 3D image. The data should be linked with the other coordinate planes to get the complete image. The complete image consists of 2 planes. The planes of a given planar image must be placed as consecutive parts within the buffer. It is recommended to use
PIXELFORMAT_NAMESPACE_PFNC_32BIT
data format with this data type whenever possible.
-
PART_DATATYPE_3D_PLANE_QUADPLANAR
= 8¶ Single plane of a planar 3D image. The data should be linked with the other coordinate planes to get the complete image. The complete image consists of 4 planes. The planes of a given planar image must be placed as consecutive parts within the buffer. It is recommended to use
PIXELFORMAT_NAMESPACE_PFNC_32BIT
data format with this data type whenever possible.
-
PART_DATATYPE_3D_PLANE_TRIPLANAR
= 7¶ Single plane of a planar 3D image. The data should be linked with the other coordinate planes to get the complete image. The complete image consists of 3 planes. The planes of a given planar image must be placed as consecutive parts within the buffer. It is recommended to use
PIXELFORMAT_NAMESPACE_PFNC_32BIT
data format with this data type whenever possible.
-
PART_DATATYPE_CONFIDENCE_MAP
= 9¶ 1 dimension-wise. Each value in the confidence map expresses level of validity of the image pixel at matching position. The data format should be a Confidence PFNC format. It is recommended to use
PIXELFORMAT_NAMESPACE_PFNC_32BIT
data format with this data type whenever possible.Type: Confidence of the individual pixel values. Expresses the level of validity of given pixel values. Confidence map is always used together with one or more additional image-based parts matching 1
-
PART_DATATYPE_CUSTOM_ID
= 1000¶ Starting value for GenTL Producer custom IDs which are implementation specific.
-
PART_DATATYPE_UNKNOWN
= 0¶ The GenTL Producer is not aware of the data type of the data in the provided buffer part. From the GenTL Consumer perspective this can be handled as raw data.
-
-
class
genicam.gentl.
PAYLOADTYPE_INFO_IDS
¶ Bases:
enum.IntEnum
Defines named constants to give a hint on the payload type to be expected in a Buffer module.
-
PAYLOAD_TYPE_CHUNK_DATA
= 4¶ The buffer payload contains chunk data which can be parsed. The chunk data type might be reported through SFNC or deduced from the technology the device is based on. This constant is for backward compatibility with GEV 1.2 and is deprecated since GenTL version 1.5. From now on ChunkData can be part or any other payload type. Use the
BUFFER_INFO_CONTAINS_CHUNKDATA
commads to query if a given buffer content contains chunk data.
-
PAYLOAD_TYPE_CHUNK_ONLY
= 8¶ The buffer payload contains only chunk data but no additional payload.
-
PAYLOAD_TYPE_CUSTOM_ID
= 1000¶ Starting value for GenTL Producer custom IDs which are implementation specific.
-
PAYLOAD_TYPE_DEVICE_SPECIFIC
= 9¶ The buffer payload contains device specific data. The GenTL Producer should report additional information through the corresponding command of
BUFFER_INFO_CMD_LIST
.
-
PAYLOAD_TYPE_FILE
= 3¶ The buffer payload contains data of a file. It is used to transfer files such as JPEG compressed images which can be stored by the GenTLProducer directly to a hard disk. The user might get a hint how to interpret the buffer by the filename provided through a call to
get_buffer_part_info()
mthods ofDataStream
class with the commandBUFFER_INFO_FILENAME
.
-
PAYLOAD_TYPE_H264
= 7¶ The buffer payload contains H.264 data in the format described in GEV 2.0. The GenTL Producer should report additional information through the corresponding command of
BUFFER_INFO_CMD_LIST
.
-
PAYLOAD_TYPE_IMAGE
= 1¶ The buffer payload contains image data. The GenTL Consumer can check if additional chunk data is available via the
BUFFER_INFO_LIST
commands.
-
PAYLOAD_TYPE_JPEG
= 5¶ The buffer payload contains JPEG data in the format described in GEV 2.0. The GenTL Producer should report additional information through the corresponding command of
BUFFER_INFO_CMD_LIST
.
-
PAYLOAD_TYPE_JPEG2000
= 6¶ The buffer payload contains JPEG 2000 data in the format described in GEV 2.0. The GenTL Producer should report additional information through the corresponding command of
BUFFER_INFO_CMD_LIST
.
-
PAYLOAD_TYPE_MULTI_PART
= 10¶ The buffer payload contains multiple parts of different payload types. Information about the individual parts should be queried using
num_buffer_parts
and get_buffer_part_info methods ofDataStream
class.
-
PAYLOAD_TYPE_RAW_DATA
= 2¶ The buffer payload contains raw and further unspecified data. This can be used to send acquisition statistics.
-
PAYLOAD_TYPE_UNKNOWN
= 0¶ The GenTL Producer is not aware of the payload type of the data in the provided buffer. For the GenTL Consumer perspective this can be handled as raw data.
-
-
class
genicam.gentl.
PIXELENDIANNESS_IDS
¶ Bases:
enum.IntEnum
Defines named constants describing endianness of multi-byte pixel data in a buffer.
-
PIXELENDIANNESS_BIG
= 2¶ The pixel data is stored in big endian format.
-
PIXELENDIANNESS_LITTLE
= 1¶ The pixel data is stored in little endian format.
-
PIXELENDIANNESS_UNKNOWN
= 0¶ Endianness of the pixel data is unknown to the GenTL Producer.
-
-
class
genicam.gentl.
PIXELFORMAT_NAMESPACE_IDS
¶ Bases:
enum.IntEnum
Defines named constants to interpret the pixel formats provided through a Buffer module.
-
PIXELFORMAT_NAMESPACE_CUSTOM_ID
= 1000¶ The interpretation of the pixel format values is GenTL Producer specific.
-
PIXELFORMAT_NAMESPACE_GEV
= 1¶ The interpretation of the pixel format values is referencing GigE Vision 1.x.
-
PIXELFORMAT_NAMESPACE_IIDC
= 2¶ The interpretation of the pixel format values is referencing IIDC 1.x.
-
PIXELFORMAT_NAMESPACE_PFNC_16BIT
= 3¶ The interpretation of the pixel format values is referencing PFNC 16Bit Values It is recommended to use the PFNC32 namespace when ever possible or even do the translation in the GenTL Producer since the support in GenTL consumers for it is expected to be much broader.
-
PIXELFORMAT_NAMESPACE_PFNC_32BIT
= 4¶ The interpretation of the pixel format values is referencing PFNC 32Bit Values.
-
PIXELFORMAT_NAMESPACE_UNKNOWN
= 0¶ The interpretation of the pixel format values is unknown to the GenTL Producer.
-
-
class
genicam.gentl.
PORT_INFO_CMD_LIST
¶ Bases:
enum.IntEnum
Defines named constants to retrieve the Port module related information.
-
PORT_INFO_ACCESS_NA
= 9¶ Flag indicating that the port is currently not available.
-
PORT_INFO_ACCESS_NI
= 10¶ Flag indicating that no port is implemented. This is only valid on the Buffer module since on all other modules the port is mandatory.
-
PORT_INFO_ACCESS_READ
= 7¶ Flag indicating that read access is allowed.
-
PORT_INFO_ACCESS_WRITE
= 8¶ Flag indicating that write access is allowed.
-
PORT_INFO_BIG_ENDIAN
= 6¶ Flag indicating that the port’s data is big endian.
-
PORT_INFO_CUSTOM_ID
= 1000¶ Starting value for GenTL Producer custom IDs which are implementation specific.
-
PORT_INFO_ID
= 0¶ Unique ID of the module the port references. In case of the remote device module
PORT_INFO_ID
returns the same ID as for the local device module. In case of a bufferPORT_INFO_ID
returns the address of the buffer as hex string without the leading ‘0x’.
-
PORT_INFO_LITTLE_ENDIAN
= 5¶ Flag indicating that the port’s data is little endian.
-
PORT_INFO_MODEL
= 2¶ Port model name. The port model references the model of the underlying module. For example if the port is for the configuration of a TLSystem module the
PORT_INFO_MODEL
returns the model of the TLSystem Module. In case the underlying module has no explicit model, the model of the GenTL Producer is to be used. So in case of a Buffer or a Data Stream the GenTL Producer model is to be used.
-
PORT_INFO_MODULE
= 4¶ GenTL Module the port refers to.
-
PORT_INFO_PORTNAME
= 12¶ Name of the port as referenced in the XML description. This name is used to connect this port to the nodemap instance of this module.
-
PORT_INFO_TLTYPE
= 3¶ Transport layer technology that is supported.
-
PORT_INFO_VENDOR
= 1¶ Port vendor name. In case the underlying module has no explicit vendor the vendor of the GenTL Producer is to be used. In case of a Buffer or a Data Stream the GenTL Producer vendor and model are to be used.
-
PORT_INFO_VERSION
= 11¶ Version of the port.
-
-
class
genicam.gentl.
STREAM_INFO_CMD_LIST
¶ Bases:
enum.IntEnum
Defines named constants to retrieve the Data Stream related information.
-
STREAM_INFO_BUF_ALIGNMENT
= 13¶ Alignment size in bytes of the buffer passed to
announce_buffer()
method. If a buffer is passed to the method which is not aligned according to the alignment size it is up to the Producer to either reject the buffer and return theGC_ERR_INVALID_BUFFER
error code or to cope with a potential overhead and use the unaligned buffer as is. In case there is no special alignment needed the GenTL Producer should report a 1.
-
STREAM_INFO_BUF_ANNOUNCE_MIN
= 12¶ Minimum number of buffers to announce.
-
STREAM_INFO_CUSTOM_ID
= 1000¶ Starting value for GenTL Producer custom IDs which are implementation specific.
-
STREAM_INFO_DEFINES_PAYLOADSIZE
= 9¶ Flag indicating that this data stream defines a payload size independent from the remote device. If false the size of the expected payload size is to be retrieved from the remote device. If true the expected payload size is to be inquired from the Data Stream module. In case the GenTL Producer does not support this command it is to interpreted as false.
-
STREAM_INFO_ID
= 0¶ Unique ID of the data stream.
-
STREAM_INFO_IS_GRABBING
= 8¶ Flag indicating whether the acquisition engine is started or not. This is independent from the acquisition status of the remote device.
-
STREAM_INFO_NUM_ANNOUNCED
= 3¶ Number of announced buffers.
-
STREAM_INFO_NUM_AWAIT_DELIVERY
= 5¶ Number of buffers in the output buffer queue.
-
STREAM_INFO_NUM_CHUNKS_MAX
= 11¶ Maximum number of chunks to be expected in a buffer (can be used to allocate the array for the
get_buffer_chunk_data()
method). In case this is not known a priori by the GenTL Producer those methods returnGC_ERR_NOT_AVAILABLE
. This maximum must not change during runtime.
-
STREAM_INFO_NUM_DELIVERED
= 1¶ Number of delivered buffers since last acquisition start.
-
STREAM_INFO_NUM_QUEUED
= 4¶ Number of buffers in the input pool plus the buffer(s) currently being illed. This does not include the buffers in the output queue. The intention of this informational value is to prevent/early detect an underrun of the acquisition buffers.
-
STREAM_INFO_NUM_STARTED
= 6¶ Number of frames started in the acquisition engine. This number is incremented every time a new buffer is started to be filled (data written to) regardless if the buffer is later delivered to the user or discarded for any reason. This number is initialized with 0 at at the time of the stream is opened. It is not reset until the stream is closed.
-
STREAM_INFO_NUM_UNDERRUN
= 2¶ Number of lost frames due to queue underrun. This number is initialized with zero at the time the stream is opened and incremented every time the data could not be acquired because there was no buffer in the input pool.
-
STREAM_INFO_PAYLOAD_SIZE
= 7¶ Size of the expected data in bytes.
-
STREAM_INFO_TLTYPE
= 10¶ Transport layer technology that is supported.
-
-
class
genicam.gentl.
TL_CHAR_ENCODING_LIST
¶ Bases:
enum.IntEnum
Char encoding schemata.
-
TL_CHAR_ENCODING_ASCII
= 0¶ Char encoding of the GenTL Producer is ASCII.
-
TL_CHAR_ENCODING_UTF8
= 1¶ Char encoding of the GenTL Producer is UTF8.
-
-
class
genicam.gentl.
TL_INFO_CMD_LIST
¶ Bases:
enum.IntEnum
Defines system module information commands. The reported information through these two functions must be in sync.
-
TL_INFO_CHAR_ENCODING
= 8¶ The char encoding of the GenTL Producer.
-
TL_INFO_CUSTOM_ID
= 1000¶ Starting value for GenTL Producer custom IDs which are implementation specific.
-
TL_INFO_DISPLAYNAME
= 7¶ User readable name of the GenTL Producer.
-
TL_INFO_GENTL_VER_MAJOR
= 9¶ Major version number of GenTL Standard Version this Producer complies with.
-
TL_INFO_GENTL_VER_MINOR
= 10¶ Minor version number of GenTL Standard Version this Producer complies with.
-
TL_INFO_ID
= 0¶ Unique ID identifying a GenTL Producer. For example the filename of the GenTL Producer implementation including its path.
-
TL_INFO_MODEL
= 2¶ A vendor produces more than one GenTL Producer for different device classes or different technologies. The
TL_INFO_MODEL
references a single GenTL Producer implementation. The combination of Vendor and Model provides a unique reference of ONE GenTL Producer implementation.Type: GenTL Producer model name. For example
-
TL_INFO_NAME
= 5¶ File name including extension of the library.
-
TL_INFO_PATHNAME
= 6¶ Full path including file name and extension of the library.
-
TL_INFO_TLTYPE
= 4¶ Transport layer technology that is supported.
-
TL_INFO_VENDOR
= 1¶ GenTL Producer vendor name.
-
TL_INFO_VERSION
= 3¶ GenTL Producer version.
-
-
class
genicam.gentl.
URL_INFO_CMD_LIST
¶ Bases:
enum.IntEnum
Defines named constants to retrieve the Port module information.
-
URL_INFO_CUSTOM_ID
= 1000¶ Starting value for GenTL Producer custom IDs which are implementation specific.
-
URL_INFO_FILENAME
= 10¶ Filename in case the scheme of the URL is
URL_SCHEME_FILE
or as a hint if the scheme isURL_SCHEME_LOCAL
.
-
URL_INFO_FILE_REGISTER_ADDRESS
= 7¶ Register address of the XML-File in the device’s register map. In case the XML is not localy stored in the device’s register map the info function should return a
GC_ERR_NOT_AVAILABLE
.
-
URL_INFO_FILE_SHA1_HASH
= 6¶ SHA1 Hash of the XML-file this URL refers to. The size of the provided buffer is 160Bit according to the SHA1 specification.
-
URL_INFO_FILE_SIZE
= 8¶ File size of the XML-File in bytes.
-
URL_INFO_FILE_VER_MAJOR
= 3¶ Major version of the XML-file this URL refers to.
-
URL_INFO_FILE_VER_MINOR
= 4¶ Minor version of the XML-file this URL refers to.
-
URL_INFO_FILE_VER_SUBMINOR
= 5¶ Subminor version of the XML-file this URL refers to.
-
URL_INFO_SCHEMA_VER_MAJOR
= 1¶ Major version of the schema this URL refers to.
-
URL_INFO_SCHEMA_VER_MINOR
= 2¶ Minor version of the schema this URL refers to.
-
URL_INFO_SCHEME
= 9¶ Scheme of the URL. Possible values are defined by
URL_SCHEME_IDS
.
-
URL_INFO_URL
= 0¶ A URL.
-
-
class
genicam.gentl.
URL_SCHEME_IDS
¶ Bases:
enum.IntEnum
Defines named constants which maps to a URL scheme.
-
URL_SCHEME_CUSTOM_ID
= 1000¶ Starting value for custom IDs which are implementation specific.
-
URL_SCHEME_FILE
= 2¶ The XML-file can be read from the local hard disk.
-
URL_SCHEME_HTTP
= 1¶ The XML-file can be retrieved from a webserver using the http protocol.
-
URL_SCHEME_LOCAL
= 0¶ The XML-File is to be retrieved from the local register map.
-