CHANGELOG
2.7.0 (2024-12-02)
Added possibility to receive module events for a device
gc_info: Added interface to test receiving module events
Improved exception message when opening device is failing
Fixed crashing when stream and device is closed after loosing connection
2.6.8 (2024-10-16)
gc_stream: - split RawCombined like IntensityCombined - apply writable chunk parameters every time after attaching the buffer
gc_file: - Fixed possible problem when reading file via gc_file
2.6.7 (2024-08-23)
Added functions and parameters to command line tools for loading and storing streamable parameters
Throw an exception if an image buffer does not contain any data
Added methods and function with timeout parameters for device discovery
2.6.6 (2024-06-04)
Added armhf jobs for jammy
2.6.5 (2024-03-12)
Added method to get remote port of device to directly read and write register
Added functions to read and write GenICam register parameters
Fixed write error message of gc_file tool
fix for gcc 13: use global stdint
2.6.4 (2023-11-09)
Fixed loading nodemap from file system
Return device display name, if device user defined name returns an error
2.6.3 (2023-10-06)
gc_config: -Fixed calling data latch to properly show PTP status
gc_info: - Added choice to either use local or remote nodemap of device - Added extended output that includes printing the local nodemaps of system, interface and device as well
2.6.2 (2023-05-17)
If available, use user defined name of device as display name
Moving function for printing (part of) nodemap from tools to library
gc_info: - Added possibility to edit nodemap in curses gui
gc_stream: - Storing ChunkRcLineRatio in properties, if available - Added option to print chunk data
Fixed build_win.bat: Include cmake files and allow renaming of base directory
Fixed allocating too much memory in Image class
2.6.1 (2023-01-09)
Fixed resetting of systems so that setSystemsPath() can be called again
Report reason if loading of producer fails
Fixed compiling under Windows
Fixed reading registers with size that is less than the requested size
Added convenience functions for loading and storing data on the camera via GenICam file interface
2.6.0 (2022-11-09)
Upgraded GenAPI to version 3.4
Changed gc_file to read and write in blocks of 512 bytes and made FileSize parameter optional
2.5.17 (2022-10-13)
Added building for Jammy
Added possibility to specify GenICam parameters on the command line of gc_pointcloud tool
README: change grep for newer netstat versions
2.5.16 (2022-05-29)
Added CI build pipelines for ARM64
net_perf_check.sh use first default interface
Show enum options even if WriteOnly
2.5.14 (2022-02-02)
Install licenses of included binaries
Reporting interface id instead of display name in output of gc_info -s
2.5.13 (2022-01-31)
Added parameter ‘-s’ to gc_info for getting a short list of discovered devices
Fixed Windows build script
2.5.12 (2021-10-23)
Imporved Windows build script for compiling with libpng
Fixed some issues when compiling under Windows
2.5.11 (2021-10-05)
Fixed getting buffers with chunk data from Basler ace2 USB cameras
2.5.10 (2021-10-01)
Make system, interface, device and stream ignore closing already closed objects
2.5.9 (2021-10-01)
Improved measuring of buffers per second in gc_stream
Do not show latency in gc_stream -t if PTP is turned off
2.5.8 (2021-09-09)
Added support for YUV422_8 and YCbCr422_8 pixel formats
2.5.7 (2021-09-01)
Added possibility to specify the internal number of buffers to allocate
gc_file tool: Exit with error if file cannot be loaded
2.5.6 (2021-08-02)
Changed ImageList::find with tolerance > 0 to return the closest within tolerance
2.5.5 (2021-07-28)
Fixed rounding when converting between color and monochrome images
Reduce minimum number of buffers
Do not attach chunk data handler to incomplete buffer
2.5.4 (2021-07-25)
Fixed reporting of operation status of gc_file tool
2.5.3 (2021-07-17)
Added build script for Visual Studio
Added methods for getting region id and data purpose id from buffer
On Windows, also try to find producers in sub directories of current library
Fixed some compiler warnings
Improved error message when writing on cport fails
Fixed conversion from YCbCr411 format to Mono8 in convertImage() function
Improved error message when setting invalid enum
Added support for RGB8 color format in getColor() function
2.5.2 (2021-07-06)
Added possibility for configuration of multiple Gev interfaces in gc_config
Fixed printing of Mac address in gc_info
Added method to stream object for checking the number of buffers available for grabbing
Treating missing parameters in Buffer as 0
Changed way how to define different path for locating producers
Added possibility to discover producers in non-default locations and ignoring a specific producer
Added possibility to store xml file with gc_info with original name
2.5.1 (2021-03-16)
Fixed compile problems under Windows
Fixed using wrong pointer in method Stream::getTLType()
Readme: Add link to release page
Removing redundent specification of namespace in some source files
2.5.0 (2021-02-26)
Upgrading GenICam reference implementation to version 3.3
Added support for storing images of format RGB8 and BayerXX8
Increasing discover timeout from 100 ms to 1 s, which is necessary for some cameras
Resetting chunk adapter in gc_stream if user explicitely disables chunk data
Added tool gc_file for reading / writing user data from / to a GenICam device
Integrated attaching buffers to nodemap into stream and buffer classes
Added support for handling payload type chunk data for supporting Basler ace cameras
Updated handling of PTP in gc_config tool using the new feature names
Correct exception message if png can’t be stored
Rename adaptive_out1_reduction to out1_reduction in stored parameter file
2.4.4 (2020-10-23)
Trying to fix problem that interface handle becomes invalid
2.4.3 (2020-10-22)
Improved reporting of exceptions
2.4.2 (2020-10-22)
Added some optional Roboception specific information to the parameter files
Fixed crashing of gc_info if getting nodemap from device fails
Fixed getEnum crash if enum doesn’t contain a value
2.4.1 (2020-07-31)
Enabled building for ROS focal on gitlab
2.4.0 (2020-07-27)
gc_stream now puts status of GPIO out and in lines in two separate bit fields in file name
2.3.7 (2020-07-27)
Improved finding devices, e.g. by IP if GenTL provider supports this
2.3.6 (2020-04-17)
Fixed compile bug under Windows
2.3.5 (2020-04-06)
ensure that downscale factor doesn’t lead to division by zero
remove build_export_depend on catkin from package.xml
2.3.4 (2020-03-15)
Workaround for Baumer GenTL GEV interface enumeration bug
2.3.3 (2020-03-06)
fix version in package.xml
fix Dockerfile
2.3.2 (2020-03-06)
add libpng-dev dependency in package.xml
2.3.1 (2020-01-10)
Reporting full name of stored images, including suffix
2.3.0 (2019-12-20)
Tool gc_stream: * now also stores the exposure time and gain in parameter files * added storing 16 bit images * Added parameter ‘-f png’ for storing images in PNG format * Reporting all stored images (IntensityRight was missing)
Tool gc_info: * print User defined name
Refactoring: * Moved functions to store images from gc_stream tool into core library * Moved function to store point cloud from tool to library
Fixed: * Do not return device if it can be found on different producers * reporting device name instead of test option when misspelling the device in ‘gc_stream -t <device> …’ call * net_perf_check.sh: fix getting mtu
2.2.3 (2019-07-25)
Fixed Windows install issues
Fixing segfault in Buffer::getTLType()
2.2.2 (2019-06-25)
Set TLParamsLocked before requesting maximum buffer size
Only free as many buffers as allocated to avoid errors off GenTL producer
Request global buffer YPadding only for none multipart buffers to avoid errors of GenTL producer
2.2.1 (2019-06-11)
Automatically splitting the stereo images in rc_visards special combined format into Intenstiy and IntensityRight images
Using TLParamsLocked correctly in streaming class as some cameras require this
gc_stream now disables component Intensity if IntensityCombined is enabled
gc_stream now creates parameter file for each Intensity image as well
Increased timeout for updating the device list to 100 ms as 10 ms can be too less for some cameras / producers
2.2.0 (2019-05-02)
gc_info does not report not implemented parameters any more
gc_info can now also only print specified nodes (which can be a category) by appending the node name with ‘?’ to the device id.
gc_stream can now measure frequency and latency of incomming buffers
Windows: look for transport layer in folder of rc_genicam_api.dll
support modern cmake - A “meta target” for all Genicam targets is defined, rc_genicam_api::genicam, on which rc_genicam_api::rc_genicam_api depends publicly. - Compile options and definitions of rc_genicam_api are set to private, only /DGENICAM_NO_AUTO_IMPLIB is public - Install paths are defined using GNUInstallDirs
update Baumer GenTL providers to 2.9.2.22969 - Support for payload type Multi-part added - The GigE Producer now find devices connected to virtual interfaces for Linux
2.1.2 (2019-03-13)
Remove global include_directories in cmake build files
Use full precision timestamp in name of images saved by gc_stream
Append out1 and out2 state to name of images saved by gc_stream
2.1.1 (2019-02-21)
Command line tools now exit with != 0 in case of an error
Improved cmake project files
2.1.0 (2019-01-25)
Made System, Interface, Device and Stream objects thread safe
2.0.4 (2019-01-24)
A buffer that is labelled to contain chunk data may also contain an image
Implemented fallback of open device access from readonly to control to exclusive
2.0.3 (2019-01-09)
Improved description of some device methods
Under Windows, do not check install path but only current directory as default location of GenTL producer
2.0.2 (2019-01-01)
Fixed bug in rcg::getEnum() function that may lead to a seg fault
Minor changes in cmake build files
2.0.1 (2018-12-21)
Added test mode to gc_stream tool (i.e. disables saving for only testing the connection)
Added printing of package size to gc_stream tool
Added statistic to gc_stream tool
Removed aborting gc_stream with ‘Enter’ from Linux version as it causes unwanted stops in some situations
Minor fixes in build files.
2.0.0 (2018-10-08)
NOTE: Including multipart support required minor changes of the existing API. See readme for more information. Attention: The provided GenTL layer does not yet support multipart!
Extended Buffer and Image classes as well as the examples for handling multi-part buffers as well (NOTE: The provided GenTL producer does not yet support multipart!)
gc_stream: Using component name for storing individual images and ensuring that files are not overwritten
gc_pointcloud: Using component name for identifying images and try enabling synchronization on device
Add libs of GenICam reference implementation to external cmake dependencies of shared genicam_api library
Upgrading GenICam reference implementation to v3.1
Add libs of GenICam reference implementation to external dependencies of shared genicam_api library
1.3.15 (2018-09-27)
Added parameter –iponly to gc_config tool
1.3.14 (2018-09-26)
Added possibility to interrupt streaming with gc_stream by pressing ‘Enter’ key.
Undefined min/max macros in gc_pointcloud.cc on Windows to avoid compile errors
1.3.13 (2018-08-23)
Changed output of gc_config -l to emphasize using interface and serial number as unique identifier
Added possibility to call a GenICam command from the command line with gc_info, gc_config and gc_stream
Additionally printing the internal name and display name of the GenTL producer in the gc_info tool
Update GEV GenTL provider from Baumer
Revision of readme
1.3.12 (2018-07-18)
Getting chunk data in gc_stream and storing disparity image with all parameters for reconstruction if possible
Error handling in gc_stream changed by first checking for incomplete buffer and then for image present
1.3.11 (2018-07-02)
don’t install bash completion by default (doesn’t work on ROS buildfarm)
make sure installed net_perf_check.sh script is executable
1.3.10 (2018-06-28)
Added possibility to set GenICam parameters in gc_info too
Only show network summary in gc_config if called without parameters or with network related parameters
Corrected spelling of visard in gc_pointcloud output file name
1.3.9 (2018-06-15)
Bash completion for UNIX and ROS
Relaxed synchronization in gc_pointcloud for special exposure alternate mode of rc_visard
Added method in image list class to request the oldest timestamp
Added triangulation to gc_pointcloud
Added parameter for output file name to gc_pointcloud
Fixed crashing of gc_info if enumeration does not have a value
1.3.8 (2018-04-18)
show actually searched path instead of env var in exception if no transport layer found
improved README
1.3.7 (2018-04-09)
Devices can now be discovered by serial number as well
1.3.6 (2018-02-25)
fix path to genicam arm64 libs
1.3.5 (2018-02-25)
add libs for arm64
1.3.4 (2018-02-23)
fix catkin dependency in package.xml
1.3.3 (2018-02-23)
fix version in package.xml
1.3.2 (2018-02-23)
fix installation of exported targets
add package.xml for releaseing as ROS third-party package
update Baumer GigE vision driver to v2.8.15736
fix architecture detection (use compiler info instead of host kernel)
1.3.1 (2017-12-20)
Improved readme
Porting package to Windows 32 and 64. It can be compiled with Visual Studio.
1.3.0 (2017-12-05)
New tools / examples:
Added tool gc_pointcloud that demonstrates synchroneous streaming and 3D reconstruction
Improvements of convenience layer:
Accept true and false for boolean GenICam values additionally to 1 and 0
Added option to ignore cache when reading parameter
Added convenience function getColor()
Added convience function checkFeature()
Changing request for timestamp in gc_stream tool
Fixed finding devices by user defined name
Improvement of help texts and messages:
Improved help for command line tools
Improved exception description
Added printing components with enabled status in gc_stream tool
Removed output of user name in gc_info as this is not the name that can be defined via gc_config -n
Changes of access mode to permit parallel read access:
Open device in gc_info readonly so that it can be used in parallel to an open device
Open device in gc_config readonly if no parameter changes are requested
Opening device in gc_stream with access mode control
Changed getDevice() function so that exclusively opened devices are discovered as well
Configuration and optimization:
[baumer] increase NextResendWaitPackets to 200
add net_perf_check.sh script
Changes in build configuration:
Ensure that the install directory lib/rc_genicam_api is accessible for everybody
option to disable building of tools
option for building shared libs
generate version info
add option to disable doc target
Switched off vectorization and looking for CUDA as it is not necessary
add Baumer GenTL lib for armv7l
1.2.0 (2017-08-15)
rename rcgcapi to rc_genicam_api
getDevice() now accepts specification if interface as prefix
Added possibility to clean all resources before exit to avoid crashes of GenTL
add all GenICam files/libs instead of depending on external package
rename pfnc.h to pixel_formats.h
bundle GenTL lib from Baumer as fallback if GENICAM_GENTL64_PATH is not set
1.1.5 (2017-05-11)
Enforced using IPv4 format for setting persistent IPs and improved output of gc_config
1.1.4 (2017-04-13)
Check if device name is not empty before looking for the device
Fixed formating of MAC addresses as string
1.1.3 (2017-04-11)
Catching exceptions in destructors of Device and Stream
Added changing of GenICam parameters through gc_config
1.1.2 (2017-04-10)
Streaming with at least 8 buffers by default
Additionally show display name when listing devices with gc_config -l
1.1.1 (2017-03-06)
Fixed bug in YCbCr411 to RGB conversion
1.1.0 (2017-03-05)
Check in gc_stream if buffer is incomplete
Added optional storing of XML file via gc_info tool
Added switching PTP on and off via gc_config tool
Convertions GenApi exceptions to standard exceptions when requesting the node map
Added helper functions for conversion from YCbCr411 to RGB
Catching GenApi exception in gc_info tool
gc_stream tool chooses name of saved images according to pixel format
Added pfnc.h with custom image format Error8
Added image and image list helper classes for time synchronization of images
Open transport layer libraries with deep bind option to prefer local symbol resolution
Wrapping GenApi Exceptions in get/set feature value helper functions
Ensure that Buffer::getTimestampNS() always returns a valid value
Added helper functions for setting and getting features via GenICam
Fixed crash of gc_stream if device is unknown
Implemented image streaming and an example for streaming images to file
1.0.1 (2017-02-16)
Initial release