You are here: Start » Function Reference » GenICam » GenICam_ReadRegisterData

GenICam_ReadRegisterData
This is Filter Equivalent. This function may be present in generated code, but should not be used in hand-written code.
Header: | Genicam.h |
---|---|
Namespace: | fis |
Module: | Genicam |
Reads binary data from a register node of a GenICam device.
Syntax
void fis::GenICam_ReadRegisterData ( GenICam_ReadRegister_State& ioState, const fil::GenAddress& inAddress, fil::GenICamParameterScope::Type inScope, const fil::GenParameterName& inParameterName, bool inVerifyAccess, const ftl::Optional<int>& inLength, fil::ByteBuffer& outBuffer )
Parameters
Name | Type | Range | Default | Description | |
---|---|---|---|---|---|
![]() |
ioState | GenICam_ReadRegister_State& | Object used to maintain state of the function. | ||
![]() |
inAddress | const GenAddress& | GenTL Provider module and device identifying address | ||
![]() |
inScope | GenICamParameterScope::Type | Specifies which parameters set in GenICam stack should be accessed | ||
![]() |
inParameterName | const GenParameterName& | Name of GenICam parameter node to access | ||
![]() |
inVerifyAccess | bool | False | True to verify GenICam parameter access state before every read | |
![]() |
inLength | const Optional<int>& | 0 - 536870912 | NIL | Length of the data to read |
![]() |
outBuffer | ByteBuffer& | Data read from the register |
Description
This filter is intended for cooperation with a general camera device through a GenTL compliant interface. Its purpose is to get a value of device parameter using GenICam interface. Filter can be used to access device registers and stream chunked data.
Warning: Retrieving parameter from an uncached device register may be a time consuming operation that produce a blocking data exchange at every filter execution.
This filter does not require other GenICam filters in program (especially GenICam_GrabImage is not obligatory), but can be used in any combination with them, including sharing access to single device with other filters.
Device address (inAddress port) is a structure defining a unique device and its GenTL provider module in the system. It is recommended to use the GenTL Device Manager to select the appropriate device, connected to the local system, whose identification information will be used.
Device address consists of the following fields:
- VendorName - Vendor name of the GenTL provider module, which will be used to communicate with the device.
- TLType - Identification code of interface transport technology type (for example "GEV", "IIDC", "UVC", "USB3", "PCI", "Custom"). The exact code depends on the GenTL provider module.
- DeviceID - Unique ID of the device in the selected interface technology of the used provider module. The format of this field must be always an exact ID string and depends on the used GenTL provider module.
This filter will interpret the value of inAddress port only during the first iteration, when the connection to the device is established. During the next iterations the filter will use previously established connection and subsequent changes in the device address will be ignored.
Parameter name (inParameterName port) must be an ID of GenICam parameter exported by the device. Each device model can have different parameter names and its meanings. Refer to the device documentation and use the GenICam settings browser to select appropriate name of parameter .
This filter allows to read a raw binary data block from the device or module memory. Data is read from the beginning of the register up to inLength bytes. Attempt to read more data than the register provides will result in an error. Setting the inLength input to Auto will cause the whole register range to be read. Resulting data is returned in form of a ByteBuffer data type on the outBuffer output (filters from the Binary Data category can be used interpret its content).
The name of the parameter must point to a readable GenICam parameter providing "IRegister" interface or error will be raised upon filter execution.
Hints
- Interactively select a camera available in your network by defining the inAddress input.
- Choose inParameterName from those supported by your camera.
Errors
List of possible exceptions:
Error type | Description |
---|---|
IoError | Reading beyond the end of the register in GenICam_ReadRegisterData. |
See Also
- GenICam_WriteRegisterData – Writes binary data into a register node of a GenICam device.