From a35851a00afd9323502af129d03d8d47355c2776 Mon Sep 17 00:00:00 2001 From: Yi donghoon Date: Mon, 24 Dec 2018 03:57:28 +0900 Subject: [PATCH 1/4] update to v2.17.x --- .../h/rs_advanced_mode_command.h | 0 .../include/librealsense2/h/rs_config.h | 198 +++++ .../include/librealsense2/h/rs_context.h | 17 +- .../include/librealsense2/h/rs_device.h | 0 .../include/librealsense2/h/rs_frame.h | 18 +- .../include/librealsense2/h/rs_internal.h | 90 ++- .../include/librealsense2/h/rs_option.h | 301 +++---- .../include/librealsense2/h/rs_pipeline.h | 243 ++---- .../include/librealsense2/h/rs_processing.h | 7 + .../librealsense2/h/rs_record_playback.h | 11 + .../include/librealsense2/h/rs_sensor.h | 2 +- .../include/librealsense2/h/rs_types.h | 0 .../include/librealsense2/hpp/rs_context.hpp | 33 +- .../include/librealsense2/hpp/rs_device.hpp | 9 +- .../include/librealsense2/hpp/rs_frame.hpp | 91 ++- .../include/librealsense2/hpp/rs_internal.hpp | 56 +- .../include/librealsense2/hpp/rs_pipeline.hpp | 66 +- .../librealsense2/hpp/rs_processing.hpp | 740 +++++++++--------- .../librealsense2/hpp/rs_record_playback.hpp | 20 +- .../include/librealsense2/hpp/rs_sensor.hpp | 30 +- .../include/librealsense2/hpp/rs_types.hpp | 0 libs/realsense2/include/librealsense2/rs.h | 2 +- libs/realsense2/include/librealsense2/rs.hpp | 0 .../include/librealsense2/rs_advanced_mode.h | 0 .../librealsense2/rs_advanced_mode.hpp | 0 .../realsense2/include/librealsense2/rsutil.h | 83 +- 26 files changed, 1236 insertions(+), 781 deletions(-) mode change 100755 => 100644 libs/realsense2/include/librealsense2/h/rs_advanced_mode_command.h create mode 100644 libs/realsense2/include/librealsense2/h/rs_config.h mode change 100755 => 100644 libs/realsense2/include/librealsense2/h/rs_context.h mode change 100755 => 100644 libs/realsense2/include/librealsense2/h/rs_device.h mode change 100755 => 100644 libs/realsense2/include/librealsense2/h/rs_frame.h mode change 100755 => 100644 libs/realsense2/include/librealsense2/h/rs_internal.h mode change 100755 => 100644 libs/realsense2/include/librealsense2/h/rs_option.h mode change 100755 => 100644 libs/realsense2/include/librealsense2/h/rs_pipeline.h mode change 100755 => 100644 libs/realsense2/include/librealsense2/h/rs_processing.h mode change 100755 => 100644 libs/realsense2/include/librealsense2/h/rs_record_playback.h mode change 100755 => 100644 libs/realsense2/include/librealsense2/h/rs_sensor.h mode change 100755 => 100644 libs/realsense2/include/librealsense2/h/rs_types.h mode change 100755 => 100644 libs/realsense2/include/librealsense2/hpp/rs_context.hpp mode change 100755 => 100644 libs/realsense2/include/librealsense2/hpp/rs_device.hpp mode change 100755 => 100644 libs/realsense2/include/librealsense2/hpp/rs_frame.hpp mode change 100755 => 100644 libs/realsense2/include/librealsense2/hpp/rs_internal.hpp mode change 100755 => 100644 libs/realsense2/include/librealsense2/hpp/rs_pipeline.hpp mode change 100755 => 100644 libs/realsense2/include/librealsense2/hpp/rs_processing.hpp mode change 100755 => 100644 libs/realsense2/include/librealsense2/hpp/rs_record_playback.hpp mode change 100755 => 100644 libs/realsense2/include/librealsense2/hpp/rs_sensor.hpp mode change 100755 => 100644 libs/realsense2/include/librealsense2/hpp/rs_types.hpp mode change 100755 => 100644 libs/realsense2/include/librealsense2/rs.h mode change 100755 => 100644 libs/realsense2/include/librealsense2/rs.hpp mode change 100755 => 100644 libs/realsense2/include/librealsense2/rs_advanced_mode.h mode change 100755 => 100644 libs/realsense2/include/librealsense2/rs_advanced_mode.hpp mode change 100755 => 100644 libs/realsense2/include/librealsense2/rsutil.h diff --git a/libs/realsense2/include/librealsense2/h/rs_advanced_mode_command.h b/libs/realsense2/include/librealsense2/h/rs_advanced_mode_command.h old mode 100755 new mode 100644 diff --git a/libs/realsense2/include/librealsense2/h/rs_config.h b/libs/realsense2/include/librealsense2/h/rs_config.h new file mode 100644 index 0000000..c365b71 --- /dev/null +++ b/libs/realsense2/include/librealsense2/h/rs_config.h @@ -0,0 +1,198 @@ +/* License: Apache 2.0. See LICENSE file in root directory. +Copyright(c) 2017 Intel Corporation. All Rights Reserved. */ + +/** \file rs_pipeline.h +* \brief +* Exposes RealSense processing-block functionality for C compilers +*/ + + +#ifndef LIBREALSENSE_RS2_CONFIG_H +#define LIBREALSENSE_RS2_CONFIG_H + +#ifdef __cplusplus +extern "C" { +#endif + +#include "rs_types.h" +#include "rs_sensor.h" + + /** + * Create a config instance + * The config allows pipeline users to request filters for the pipeline streams and device selection and configuration. + * This is an optional step in pipeline creation, as the pipeline resolves its streaming device internally. + * Config provides its users a way to set the filters and test if there is no conflict with the pipeline requirements + * from the device. It also allows the user to find a matching device for the config filters and the pipeline, in order to + * select a device explicitly, and modify its controls before streaming starts. + * + * \param[out] error if non-null, receives any error that occurs during this call, otherwise, errors are ignored + * \return rs2_config* A pointer to a new config instance + */ + rs2_config* rs2_create_config(rs2_error** error); + + /** + * Deletes an instance of a config + * + * \param[in] config A pointer to an instance of a config + */ + void rs2_delete_config(rs2_config* config); + + /** + * Enable a device stream explicitly, with selected stream parameters. + * The method allows the application to request a stream with specific configuration. If no stream is explicitly enabled, the pipeline + * configures the device and its streams according to the attached computer vision modules and processing blocks requirements, or + * default configuration for the first available device. + * The application can configure any of the input stream parameters according to its requirement, or set to 0 for don't care value. + * The config accumulates the application calls for enable configuration methods, until the configuration is applied. Multiple enable + * stream calls for the same stream with conflicting parameters override each other, and the last call is maintained. + * Upon calling \c resolve(), the config checks for conflicts between the application configuration requests and the attached computer + * vision modules and processing blocks requirements, and fails if conflicts are found. Before \c resolve() is called, no conflict + * check is done. + * + * \param[in] config A pointer to an instance of a config + * \param[in] stream Stream type to be enabled + * \param[in] index Stream index, used for multiple streams of the same type. -1 indicates any. + * \param[in] width Stream image width - for images streams. 0 indicates any. + * \param[in] height Stream image height - for images streams. 0 indicates any. + * \param[in] format Stream data format - pixel format for images streams, of data type for other streams. RS2_FORMAT_ANY indicates any. + * \param[in] framerate Stream frames per second. 0 indicates any. + * \param[out] error if non-null, receives any error that occurs during this call, otherwise, errors are ignored + */ + void rs2_config_enable_stream(rs2_config* config, + rs2_stream stream, + int index, + int width, + int height, + rs2_format format, + int framerate, + rs2_error** error); + + /** + * Enable all device streams explicitly. + * The conditions and behavior of this method are similar to those of \c enable_stream(). + * This filter enables all raw streams of the selected device. The device is either selected explicitly by the application, + * or by the pipeline requirements or default. The list of streams is device dependent. + * + * \param[in] config A pointer to an instance of a config + * \param[out] error if non-null, receives any error that occurs during this call, otherwise, errors are ignored + */ + void rs2_config_enable_all_stream(rs2_config* config, rs2_error ** error); + + /** + * Select a specific device explicitly by its serial number, to be used by the pipeline. + * The conditions and behavior of this method are similar to those of \c enable_stream(). + * This method is required if the application needs to set device or sensor settings prior to pipeline streaming, to enforce + * the pipeline to use the configured device. + * + * \param[in] config A pointer to an instance of a config + * \param[in] serial device serial number, as returned by RS2_CAMERA_INFO_SERIAL_NUMBER + * \param[out] error if non-null, receives any error that occurs during this call, otherwise, errors are ignored + */ + void rs2_config_enable_device(rs2_config* config, const char* serial, rs2_error ** error); + + /** + * Select a recorded device from a file, to be used by the pipeline through playback. + * The device available streams are as recorded to the file, and \c resolve() considers only this device and configuration + * as available. + * This request cannot be used if enable_record_to_file() is called for the current config, and vise versa + * By default, playback is repeated once the file ends. To control this, see 'rs2_config_enable_device_from_file_repeat_option'. + * + * \param[in] config A pointer to an instance of a config + * \param[in] file The playback file of the device + * \param[out] error if non-null, receives any error that occurs during this call, otherwise, errors are ignored + */ + void rs2_config_enable_device_from_file(rs2_config* config, const char* file, rs2_error ** error); + + /** + * Select a recorded device from a file, to be used by the pipeline through playback. + * The device available streams are as recorded to the file, and \c resolve() considers only this device and configuration + * as available. + * This request cannot be used if enable_record_to_file() is called for the current config, and vise versa + * + * \param[in] config A pointer to an instance of a config + * \param[in] file The playback file of the device + * \param[in] repeat_playback if true, when file ends the playback starts again, in an infinite loop; + if false, when file ends playback does not start again, and should by stopped manually by the user. + * \param[out] error if non-null, receives any error that occurs during this call, otherwise, errors are ignored + */ + void rs2_config_enable_device_from_file_repeat_option(rs2_config* config, const char* file, int repeat_playback, rs2_error ** error); + + /** + * Requires that the resolved device would be recorded to file + * This request cannot be used if enable_device_from_file() is called for the current config, and vise versa + * + * \param[in] config A pointer to an instance of a config + * \param[in] file The desired file for the output record + * \param[out] error if non-null, receives any error that occurs during this call, otherwise, errors are ignored + */ + void rs2_config_enable_record_to_file(rs2_config* config, const char* file, rs2_error ** error); + + + /** + * Disable a device stream explicitly, to remove any requests on this stream type. + * The stream can still be enabled due to pipeline computer vision module request. This call removes any filter on the + * stream configuration. + * + * \param[in] config A pointer to an instance of a config + * \param[in] stream Stream type, for which the filters are cleared + * \param[out] error if non-null, receives any error that occurs during this call, otherwise, errors are ignored + */ + void rs2_config_disable_stream(rs2_config* config, rs2_stream stream, rs2_error ** error); + + /** + * Disable a device stream explicitly, to remove any requests on this stream profile. + * The stream can still be enabled due to pipeline computer vision module request. This call removes any filter on the + * stream configuration. + * + * \param[in] config A pointer to an instance of a config + * \param[in] stream Stream type, for which the filters are cleared + * \param[in] index Stream index, for which the filters are cleared + * \param[out] error if non-null, receives any error that occurs during this call, otherwise, errors are ignored + */ + void rs2_config_disable_indexed_stream(rs2_config* config, rs2_stream stream, int index, rs2_error ** error); + + /** + * Disable all device stream explicitly, to remove any requests on the streams profiles. + * The streams can still be enabled due to pipeline computer vision module request. This call removes any filter on the + * streams configuration. + * + * \param[in] config A pointer to an instance of a config + * \param[out] error if non-null, receives any error that occurs during this call, otherwise, errors are ignored + */ + void rs2_config_disable_all_streams(rs2_config* config, rs2_error ** error); + + /** + * Resolve the configuration filters, to find a matching device and streams profiles. + * The method resolves the user configuration filters for the device and streams, and combines them with the requirements of + * the computer vision modules and processing blocks attached to the pipeline. If there are no conflicts of requests, it looks + * for an available device, which can satisfy all requests, and selects the first matching streams configuration. In the absence + * of any request, the rs2::config selects the first available device and the first color and depth streams configuration. + * The pipeline profile selection during \c start() follows the same method. Thus, the selected profile is the same, if no + * change occurs to the available devices occurs. + * Resolving the pipeline configuration provides the application access to the pipeline selected device for advanced control. + * The returned configuration is not applied to the device, so the application doesn't own the device sensors. However, the + * application can call \c enable_device(), to enforce the device returned by this method is selected by pipeline \c start(), + * and configure the device and sensors options or extensions before streaming starts. + * + * \param[in] config A pointer to an instance of a config + * \param[in] pipe The pipeline for which the selected filters are applied + * \param[out] error if non-null, receives any error that occurs during this call, otherwise, errors are ignored + * \return A matching device and streams profile, which satisfies the filters and pipeline requests. + */ + rs2_pipeline_profile* rs2_config_resolve(rs2_config* config, rs2_pipeline* pipe, rs2_error ** error); + + /** + * Check if the config can resolve the configuration filters, to find a matching device and streams profiles. + * The resolution conditions are as described in \c resolve(). + * + * \param[in] config A pointer to an instance of a config + * \param[in] pipe The pipeline for which the selected filters are applied + * \param[out] error if non-null, receives any error that occurs during this call, otherwise, errors are ignored + * \return True if a valid profile selection exists, false if no selection can be found under the config filters and the available devices. + */ + int rs2_config_can_resolve(rs2_config* config, rs2_pipeline* pipe, rs2_error ** error); + +#ifdef __cplusplus +} +#endif +#endif diff --git a/libs/realsense2/include/librealsense2/h/rs_context.h b/libs/realsense2/include/librealsense2/h/rs_context.h old mode 100755 new mode 100644 index 52718f3..87d375b --- a/libs/realsense2/include/librealsense2/h/rs_context.h +++ b/libs/realsense2/include/librealsense2/h/rs_context.h @@ -71,6 +71,21 @@ void rs2_context_remove_device(rs2_context* ctx, const char* file, rs2_error** e */ rs2_device_list* rs2_query_devices(const rs2_context* context, rs2_error** error); +#define RS2_PRODUCT_LINE_ANY 0xff +#define RS2_PRODUCT_LINE_ANY_INTEL 0xfe +#define RS2_PRODUCT_LINE_NON_INTEL 0x01 +#define RS2_PRODUCT_LINE_D400 0x02 +#define RS2_PRODUCT_LINE_SR300 0x04 + +/** +* create a static snapshot of all connected devices at the time of the call +* \param context Object representing librealsense session +* \param product_mask Controls what kind of devices will be returned +* \param[out] error if non-null, receives any error that occurs during this call, otherwise, errors are ignored +* \return the list of devices, should be released by rs2_delete_device_list +*/ +rs2_device_list* rs2_query_devices_ex(const rs2_context* context, int product_mask, rs2_error** error); + /** * \brief Creates RealSense device_hub . * \param[in] context The context for the device hub @@ -93,7 +108,7 @@ void rs2_delete_device_hub(const rs2_device_hub* hub); * \param[out] error If non-null, receives any error that occurs during this call, otherwise, errors are ignored. * \return device object */ -rs2_device* rs2_device_hub_wait_for_device(rs2_context* ctx, const rs2_device_hub* hub, rs2_error** error); +rs2_device* rs2_device_hub_wait_for_device(const rs2_device_hub* hub, rs2_error** error); /** * Checks if device is still connected diff --git a/libs/realsense2/include/librealsense2/h/rs_device.h b/libs/realsense2/include/librealsense2/h/rs_device.h old mode 100755 new mode 100644 diff --git a/libs/realsense2/include/librealsense2/h/rs_frame.h b/libs/realsense2/include/librealsense2/h/rs_frame.h old mode 100755 new mode 100644 index c346d24..a69d42c --- a/libs/realsense2/include/librealsense2/h/rs_frame.h +++ b/libs/realsense2/include/librealsense2/h/rs_frame.h @@ -40,9 +40,9 @@ typedef enum rs2_frame_metadata_value RS2_FRAME_METADATA_BACKEND_TIMESTAMP , /**< Timestamp get from uvc driver. usec*/ RS2_FRAME_METADATA_ACTUAL_FPS , /**< Actual fps */ RS2_FRAME_METADATA_FRAME_LASER_POWER , /**< Laser power value 0-360. */ - RS2_FRAME_METADATA_FRAME_LASER_POWER_MODE , /**< Laser power mode. Zero corresponds to Laser power switched off and one for switched on. */ + RS2_FRAME_METADATA_FRAME_LASER_POWER_MODE , /**< Laser power mode. Zero corresponds to Laser power switched off and one for switched on. */ RS2_FRAME_METADATA_EXPOSURE_PRIORITY , /**< Exposure priority. */ - RS2_FRAME_METADATA_EXPOSURE_ROI_LEFT , /**< Left region of interest for the auto exposure Algorithm. */ + RS2_FRAME_METADATA_EXPOSURE_ROI_LEFT , /**< Left region of interest for the auto exposure Algorithm. */ RS2_FRAME_METADATA_EXPOSURE_ROI_RIGHT , /**< Right region of interest for the auto exposure Algorithm. */ RS2_FRAME_METADATA_EXPOSURE_ROI_TOP , /**< Top region of interest for the auto exposure Algorithm. */ RS2_FRAME_METADATA_EXPOSURE_ROI_BOTTOM , /**< Bottom region of interest for the auto exposure Algorithm. */ @@ -276,6 +276,17 @@ int rs2_is_frame_extendable_to(const rs2_frame* frame, rs2_extension extension_t rs2_frame* rs2_allocate_synthetic_video_frame(rs2_source* source, const rs2_stream_profile* new_stream, rs2_frame* original, int new_bpp, int new_width, int new_height, int new_stride, rs2_extension frame_type, rs2_error** error); +/** +* Allocate new points frame using a frame-source provided from a processing block +* \param[in] source Frame pool to allocate the frame from +* \param[in] new_stream New stream profile to assign to newly created frame +* \param[in] original A reference frame that can be used to fill in auxilary information like format, width, height, bpp, stride (if applicable) +* \param[out] error If non-null, receives any error that occurs during this call, otherwise, errors are ignored +* \return reference to a newly allocated frame, must be released with release_frame +* memory for the frame is likely to be re-used from previous frame, but in lack of available frames in the pool will be allocated from the free store +*/ +rs2_frame* rs2_allocate_points(rs2_source* source, const rs2_stream_profile* new_stream, rs2_frame* original, rs2_error** error); + /** * Allocate new composite frame, aggregating a set of existing frames * \param[in] source Frame pool to allocate the frame from @@ -323,9 +334,6 @@ void rs2_synthetic_frame_ready(rs2_source* source, rs2_frame* frame, rs2_error** */ void rs2_pose_frame_get_pose_data(const rs2_frame* frame, rs2_pose* pose, rs2_error** error); - - - #ifdef __cplusplus } #endif diff --git a/libs/realsense2/include/librealsense2/h/rs_internal.h b/libs/realsense2/include/librealsense2/h/rs_internal.h old mode 100755 new mode 100644 index d812c99..7081e88 --- a/libs/realsense2/include/librealsense2/h/rs_internal.h +++ b/libs/realsense2/include/librealsense2/h/rs_internal.h @@ -30,7 +30,7 @@ typedef enum rs2_recording_mode RS2_RECORDING_MODE_COUNT } rs2_recording_mode; -/** \brief All the parameters are requaired to defind video stream*/ +/** \brief All the parameters are requaired to define video stream*/ typedef struct rs2_video_stream { rs2_stream type; @@ -44,6 +44,27 @@ typedef struct rs2_video_stream rs2_intrinsics intrinsics; } rs2_video_stream; +/** \brief All the parameters are requaired to define motion stream*/ +typedef struct rs2_motion_stream +{ + rs2_stream type; + int index; + int uid; + int fps; + rs2_format fmt; + rs2_motion_device_intrinsic intrinsics; +} rs2_motion_stream; + +/** \brief All the parameters are requaired to define pose stream*/ +typedef struct rs2_pose_stream +{ + rs2_stream type; + int index; + int uid; + int fps; + rs2_format fmt; +} rs2_pose_stream; + /** \brief All the parameters are requaired to define video frame*/ typedef struct rs2_software_video_frame { @@ -57,6 +78,39 @@ typedef struct rs2_software_video_frame const rs2_stream_profile* profile; } rs2_software_video_frame; +/** \brief All the parameters are requaired to define motion frame*/ +typedef struct rs2_software_motion_frame +{ + void* data; + void(*deleter)(void*); + rs2_time_t timestamp; + rs2_timestamp_domain domain; + int frame_number; + const rs2_stream_profile* profile; +} rs2_software_motion_frame; + +/** \brief All the parameters are requaired to define pose frame*/ +typedef struct rs2_software_pose_frame +{ + struct pose_frame_info + { + float translation[3]; + float velocity[3]; + float acceleration[3]; + float rotation[4]; + float angular_velocity[3]; + float angular_acceleration[3]; + int tracker_confidence; + int mapper_confidence; + }; + void* data; + void(*deleter)(void*); + rs2_time_t timestamp; + rs2_timestamp_domain domain; + int frame_number; + const rs2_stream_profile* profile; +} rs2_software_pose_frame; + /** * Create librealsense context that will try to record all operations over librealsense into a file * \param[in] api_version realsense API version as provided by RS2_API_VERSION macro @@ -108,13 +162,29 @@ rs2_device* rs2_create_software_device(rs2_error** error); rs2_sensor* rs2_software_device_add_sensor(rs2_device* dev, const char* sensor_name, rs2_error** error); /** - * Inject frame to software sonsor + * Inject video frame to software sonsor * \param[in] sensor the software sensor * \param[in] frame all the frame components * \param[out] error if non-null, receives any error that occurs during this call, otherwise, errors are ignored */ void rs2_software_sensor_on_video_frame(rs2_sensor* sensor, rs2_software_video_frame frame, rs2_error** error); +/** +* Inject motion frame to software sonsor +* \param[in] sensor the software sensor +* \param[in] frame all the frame components +* \param[out] error if non-null, receives any error that occurs during this call, otherwise, errors are ignored +*/ +void rs2_software_sensor_on_motion_frame(rs2_sensor* sensor, rs2_software_motion_frame frame, rs2_error** error); + +/** +* Inject pose frame to software sonsor +* \param[in] sensor the software sensor +* \param[in] frame all the frame components +* \param[out] error if non-null, receives any error that occurs during this call, otherwise, errors are ignored +*/ +void rs2_software_sensor_on_pose_frame(rs2_sensor* sensor, rs2_software_pose_frame frame, rs2_error** error); + /** * Set frame metadata for the upcoming frames * \param[in] sensor the software sensor @@ -140,6 +210,22 @@ void rs2_software_device_create_matcher(rs2_device* dev, rs2_matchers matcher, r */ rs2_stream_profile* rs2_software_sensor_add_video_stream(rs2_sensor* sensor, rs2_video_stream video_stream, rs2_error** error); +/** +* Add motion stream to sensor +* \param[in] sensor the software sensor +* \param[in] video_stream all the stream components +* \param[out] error if non-null, receives any error that occurs during this call, otherwise, errors are ignored +*/ +rs2_stream_profile* rs2_software_sensor_add_motion_stream(rs2_sensor* sensor, rs2_motion_stream motion_stream, rs2_error** error); + +/** +* Add pose stream to sensor +* \param[in] sensor the software sensor +* \param[in] video_stream all the stream components +* \param[out] error if non-null, receives any error that occurs during this call, otherwise, errors are ignored +*/ +rs2_stream_profile* rs2_software_sensor_add_pose_stream(rs2_sensor* sensor, rs2_pose_stream pose_stream, rs2_error** error); + /** * Add read only option to sensor * \param[in] sensor the software sensor diff --git a/libs/realsense2/include/librealsense2/h/rs_option.h b/libs/realsense2/include/librealsense2/h/rs_option.h old mode 100755 new mode 100644 index 71be14b..215da93 --- a/libs/realsense2/include/librealsense2/h/rs_option.h +++ b/libs/realsense2/include/librealsense2/h/rs_option.h @@ -1,5 +1,5 @@ /* License: Apache 2.0. See LICENSE file in root directory. - Copyright(c) 2017 Intel Corporation. All Rights Reserved. */ +Copyright(c) 2017 Intel Corporation. All Rights Reserved. */ /** \file rs_option.h * \brief @@ -16,156 +16,159 @@ extern "C" { #include "rs_types.h" -/** \brief Defines general configuration controls. + /** \brief Defines general configuration controls. These can generally be mapped to camera UVC controls, and unless stated otherwise, can be set/queried at any time. */ -typedef enum rs2_option -{ - RS2_OPTION_BACKLIGHT_COMPENSATION , /**< Enable / disable color backlight compensation*/ - RS2_OPTION_BRIGHTNESS , /**< Color image brightness*/ - RS2_OPTION_CONTRAST , /**< Color image contrast*/ - RS2_OPTION_EXPOSURE , /**< Controls exposure time of color camera. Setting any value will disable auto exposure*/ - RS2_OPTION_GAIN , /**< Color image gain*/ - RS2_OPTION_GAMMA , /**< Color image gamma setting*/ - RS2_OPTION_HUE , /**< Color image hue*/ - RS2_OPTION_SATURATION , /**< Color image saturation setting*/ - RS2_OPTION_SHARPNESS , /**< Color image sharpness setting*/ - RS2_OPTION_WHITE_BALANCE , /**< Controls white balance of color image. Setting any value will disable auto white balance*/ - RS2_OPTION_ENABLE_AUTO_EXPOSURE , /**< Enable / disable color image auto-exposure*/ - RS2_OPTION_ENABLE_AUTO_WHITE_BALANCE , /**< Enable / disable color image auto-white-balance*/ - RS2_OPTION_VISUAL_PRESET , /**< Provide access to several recommend sets of option presets for the depth camera */ - RS2_OPTION_LASER_POWER , /**< Power of the F200 / SR300 projector, with 0 meaning projector off*/ - RS2_OPTION_ACCURACY , /**< Set the number of patterns projected per frame. The higher the accuracy value the more patterns projected. Increasing the number of patterns help to achieve better accuracy. Note that this control is affecting the Depth FPS */ - RS2_OPTION_MOTION_RANGE , /**< Motion vs. Range trade-off, with lower values allowing for better motion sensitivity and higher values allowing for better depth range*/ - RS2_OPTION_FILTER_OPTION , /**< Set the filter to apply to each depth frame. Each one of the filter is optimized per the application requirements*/ - RS2_OPTION_CONFIDENCE_THRESHOLD , /**< The confidence level threshold used by the Depth algorithm pipe to set whether a pixel will get a valid range or will be marked with invalid range*/ - RS2_OPTION_EMITTER_ENABLED , /**< Laser Emitter enabled */ - RS2_OPTION_FRAMES_QUEUE_SIZE , /**< Number of frames the user is allowed to keep per stream. Trying to hold-on to more frames will cause frame-drops.*/ - RS2_OPTION_TOTAL_FRAME_DROPS , /**< Total number of detected frame drops from all streams */ - RS2_OPTION_AUTO_EXPOSURE_MODE , /**< Auto-Exposure modes: Static, Anti-Flicker and Hybrid */ - RS2_OPTION_POWER_LINE_FREQUENCY , /**< Power Line Frequency control for anti-flickering Off/50Hz/60Hz/Auto */ - RS2_OPTION_ASIC_TEMPERATURE , /**< Current Asic Temperature */ - RS2_OPTION_ERROR_POLLING_ENABLED , /**< disable error handling */ - RS2_OPTION_PROJECTOR_TEMPERATURE , /**< Current Projector Temperature */ - RS2_OPTION_OUTPUT_TRIGGER_ENABLED , /**< Enable / disable trigger to be outputed from the camera to any external device on every depth frame */ - RS2_OPTION_MOTION_MODULE_TEMPERATURE , /**< Current Motion-Module Temperature */ - RS2_OPTION_DEPTH_UNITS , /**< Number of meters represented by a single depth unit */ - RS2_OPTION_ENABLE_MOTION_CORRECTION , /**< Enable/Disable automatic correction of the motion data */ - RS2_OPTION_AUTO_EXPOSURE_PRIORITY , /**< Allows sensor to dynamically ajust the frame rate depending on lighting conditions */ - RS2_OPTION_COLOR_SCHEME , /**< Color scheme for data visualization */ - RS2_OPTION_HISTOGRAM_EQUALIZATION_ENABLED , /**< Perform histogram equalization post-processing on the depth data */ - RS2_OPTION_MIN_DISTANCE , /**< Minimal distance to the target */ - RS2_OPTION_MAX_DISTANCE , /**< Maximum distance to the target */ - RS2_OPTION_TEXTURE_SOURCE , /**< Texture mapping stream unique ID */ - RS2_OPTION_FILTER_MAGNITUDE , /**< The 2D-filter effect. The specific interpretation is given within the context of the filter */ - RS2_OPTION_FILTER_SMOOTH_ALPHA , /**< 2D-filter parameter controls the weight/radius for smoothing.*/ - RS2_OPTION_FILTER_SMOOTH_DELTA , /**< 2D-filter range/validity threshold*/ - RS2_OPTION_HOLES_FILL , /**< Enhance depth data post-processing with holes filling where appropriate*/ - RS2_OPTION_STEREO_BASELINE , /**< The distance in mm between the first and the second imagers in stereo-based depth cameras*/ - RS2_OPTION_AUTO_EXPOSURE_CONVERGE_STEP , /**< Allows dynamically ajust the converge step value of the target exposure in Auto-Exposure algorithm*/ - RS2_OPTION_INTER_CAM_SYNC_MODE , /**< Impose Inter-camera HW synchronization mode. Applicable for D400/Rolling Shutter SKUs */ - RS2_OPTION_COUNT /**< Number of enumeration values. Not a valid input: intended to be used in for-loops. */ -} rs2_option; -const char* rs2_option_to_string(rs2_option option); - -/** \brief For SR300 devices: provides optimized settings (presets) for specific types of usage. */ -typedef enum rs2_sr300_visual_preset -{ - RS2_SR300_VISUAL_PRESET_SHORT_RANGE , /**< Preset for short range */ - RS2_SR300_VISUAL_PRESET_LONG_RANGE , /**< Preset for long range */ - RS2_SR300_VISUAL_PRESET_BACKGROUND_SEGMENTATION , /**< Preset for background segmentation */ - RS2_SR300_VISUAL_PRESET_GESTURE_RECOGNITION , /**< Preset for gesture recognition */ - RS2_SR300_VISUAL_PRESET_OBJECT_SCANNING , /**< Preset for object scanning */ - RS2_SR300_VISUAL_PRESET_FACE_ANALYTICS , /**< Preset for face analytics */ - RS2_SR300_VISUAL_PRESET_FACE_LOGIN , /**< Preset for face login */ - RS2_SR300_VISUAL_PRESET_GR_CURSOR , /**< Preset for GR cursor */ - RS2_SR300_VISUAL_PRESET_DEFAULT , /**< Camera default settings */ - RS2_SR300_VISUAL_PRESET_MID_RANGE , /**< Preset for mid-range */ - RS2_SR300_VISUAL_PRESET_IR_ONLY , /**< Preset for IR only */ - RS2_SR300_VISUAL_PRESET_COUNT /**< Number of enumeration values. Not a valid input: intended to be used in for-loops. */ -} rs2_sr300_visual_preset; -const char* rs2_sr300_visual_preset_to_string(rs2_sr300_visual_preset preset); - -/** \brief For RS400 devices: provides optimized settings (presets) for specific types of usage. */ -typedef enum rs2_rs400_visual_preset -{ - RS2_RS400_VISUAL_PRESET_CUSTOM, - RS2_RS400_VISUAL_PRESET_DEFAULT, - RS2_RS400_VISUAL_PRESET_HAND, - RS2_RS400_VISUAL_PRESET_HIGH_ACCURACY, - RS2_RS400_VISUAL_PRESET_HIGH_DENSITY, - RS2_RS400_VISUAL_PRESET_MEDIUM_DENSITY, - RS2_RS400_VISUAL_PRESET_REMOVE_IR_PATTERN, - RS2_RS400_VISUAL_PRESET_COUNT -} rs2_rs400_visual_preset; -const char* rs2_rs400_visual_preset_to_string(rs2_rs400_visual_preset preset); - -/** -* check if an option is read-only -* \param[in] sensor the RealSense sensor -* \param[in] option option id to be checked -* \param[out] error if non-null, receives any error that occurs during this call, otherwise, errors are ignored -* \return true if option is read-only -*/ -int rs2_is_option_read_only(const rs2_options* options, rs2_option option, rs2_error** error); - -/** -* read option value from the sensor -* \param[in] sensor the RealSense sensor -* \param[in] option option id to be queried -* \param[out] error if non-null, receives any error that occurs during this call, otherwise, errors are ignored -* \return value of the option -*/ -float rs2_get_option(const rs2_options* options, rs2_option option, rs2_error** error); - -/** -* write new value to sensor option -* \param[in] sensor the RealSense sensor -* \param[in] option option id to be queried -* \param[in] value new value for the option -* \param[out] error if non-null, receives any error that occurs during this call, otherwise, errors are ignored -*/ -void rs2_set_option(const rs2_options* options, rs2_option option, float value, rs2_error** error); - -/** -* check if particular option is supported by a subdevice -* \param[in] sensor the RealSense sensor -* \param[in] option option id to be checked -* \param[out] error if non-null, receives any error that occurs during this call, otherwise, errors are ignored -* \return true if option is supported -*/ -int rs2_supports_option(const rs2_options* options, rs2_option option, rs2_error** error); - -/** -* retrieve the available range of values of a supported option -* \param[in] sensor the RealSense device -* \param[in] option the option whose range should be queried -* \param[out] min the minimum value which will be accepted for this option -* \param[out] max the maximum value which will be accepted for this option -* \param[out] step the granularity of options which accept discrete values, or zero if the option accepts continuous values -* \param[out] def the default value of the option -* \param[out] error if non-null, receives any error that occurs during this call, otherwise, errors are ignored -*/ -void rs2_get_option_range(const rs2_options* sensor, rs2_option option, float* min, float* max, float* step, float* def, rs2_error** error); - -/** -* get option description -* \param[in] sensor the RealSense sensor -* \param[in] option option id to be checked -* \param[out] error if non-null, receives any error that occurs during this call, otherwise, errors are ignored -* \return human-readable option description -*/ -const char* rs2_get_option_description(const rs2_options* options, rs2_option option, rs2_error ** error); - -/** -* get option value description (in case specific option value hold special meaning) -* \param[in] device the RealSense device -* \param[in] option option id to be checked -* \param[in] value value of the option -* \param[out] error if non-null, receives any error that occurs during this call, otherwise, errors are ignored -* \return human-readable description of a specific value of an option or null if no special meaning -*/ -const char* rs2_get_option_value_description(const rs2_options* options, rs2_option option, float value, rs2_error ** error); + typedef enum rs2_option + { + RS2_OPTION_BACKLIGHT_COMPENSATION, /**< Enable / disable color backlight compensation*/ + RS2_OPTION_BRIGHTNESS, /**< Color image brightness*/ + RS2_OPTION_CONTRAST, /**< Color image contrast*/ + RS2_OPTION_EXPOSURE, /**< Controls exposure time of color camera. Setting any value will disable auto exposure*/ + RS2_OPTION_GAIN, /**< Color image gain*/ + RS2_OPTION_GAMMA, /**< Color image gamma setting*/ + RS2_OPTION_HUE, /**< Color image hue*/ + RS2_OPTION_SATURATION, /**< Color image saturation setting*/ + RS2_OPTION_SHARPNESS, /**< Color image sharpness setting*/ + RS2_OPTION_WHITE_BALANCE, /**< Controls white balance of color image. Setting any value will disable auto white balance*/ + RS2_OPTION_ENABLE_AUTO_EXPOSURE, /**< Enable / disable color image auto-exposure*/ + RS2_OPTION_ENABLE_AUTO_WHITE_BALANCE, /**< Enable / disable color image auto-white-balance*/ + RS2_OPTION_VISUAL_PRESET, /**< Provide access to several recommend sets of option presets for the depth camera */ + RS2_OPTION_LASER_POWER, /**< Power of the F200 / SR300 projector, with 0 meaning projector off*/ + RS2_OPTION_ACCURACY, /**< Set the number of patterns projected per frame. The higher the accuracy value the more patterns projected. Increasing the number of patterns help to achieve better accuracy. Note that this control is affecting the Depth FPS */ + RS2_OPTION_MOTION_RANGE, /**< Motion vs. Range trade-off, with lower values allowing for better motion sensitivity and higher values allowing for better depth range*/ + RS2_OPTION_FILTER_OPTION, /**< Set the filter to apply to each depth frame. Each one of the filter is optimized per the application requirements*/ + RS2_OPTION_CONFIDENCE_THRESHOLD, /**< The confidence level threshold used by the Depth algorithm pipe to set whether a pixel will get a valid range or will be marked with invalid range*/ + RS2_OPTION_EMITTER_ENABLED, /**< Laser Emitter enabled */ + RS2_OPTION_FRAMES_QUEUE_SIZE, /**< Number of frames the user is allowed to keep per stream. Trying to hold-on to more frames will cause frame-drops.*/ + RS2_OPTION_TOTAL_FRAME_DROPS, /**< Total number of detected frame drops from all streams */ + RS2_OPTION_AUTO_EXPOSURE_MODE, /**< Auto-Exposure modes: Static, Anti-Flicker and Hybrid */ + RS2_OPTION_POWER_LINE_FREQUENCY, /**< Power Line Frequency control for anti-flickering Off/50Hz/60Hz/Auto */ + RS2_OPTION_ASIC_TEMPERATURE, /**< Current Asic Temperature */ + RS2_OPTION_ERROR_POLLING_ENABLED, /**< disable error handling */ + RS2_OPTION_PROJECTOR_TEMPERATURE, /**< Current Projector Temperature */ + RS2_OPTION_OUTPUT_TRIGGER_ENABLED, /**< Enable / disable trigger to be outputed from the camera to any external device on every depth frame */ + RS2_OPTION_MOTION_MODULE_TEMPERATURE, /**< Current Motion-Module Temperature */ + RS2_OPTION_DEPTH_UNITS, /**< Number of meters represented by a single depth unit */ + RS2_OPTION_ENABLE_MOTION_CORRECTION, /**< Enable/Disable automatic correction of the motion data */ + RS2_OPTION_AUTO_EXPOSURE_PRIORITY, /**< Allows sensor to dynamically ajust the frame rate depending on lighting conditions */ + RS2_OPTION_COLOR_SCHEME, /**< Color scheme for data visualization */ + RS2_OPTION_HISTOGRAM_EQUALIZATION_ENABLED, /**< Perform histogram equalization post-processing on the depth data */ + RS2_OPTION_MIN_DISTANCE, /**< Minimal distance to the target */ + RS2_OPTION_MAX_DISTANCE, /**< Maximum distance to the target */ + RS2_OPTION_TEXTURE_SOURCE, /**< Texture mapping stream unique ID */ + RS2_OPTION_FILTER_MAGNITUDE, /**< The 2D-filter effect. The specific interpretation is given within the context of the filter */ + RS2_OPTION_FILTER_SMOOTH_ALPHA, /**< 2D-filter parameter controls the weight/radius for smoothing.*/ + RS2_OPTION_FILTER_SMOOTH_DELTA, /**< 2D-filter range/validity threshold*/ + RS2_OPTION_HOLES_FILL, /**< Enhance depth data post-processing with holes filling where appropriate*/ + RS2_OPTION_STEREO_BASELINE, /**< The distance in mm between the first and the second imagers in stereo-based depth cameras*/ + RS2_OPTION_AUTO_EXPOSURE_CONVERGE_STEP, /**< Allows dynamically ajust the converge step value of the target exposure in Auto-Exposure algorithm*/ + RS2_OPTION_INTER_CAM_SYNC_MODE, /**< Impose Inter-camera HW synchronization mode. Applicable for D400/Rolling Shutter SKUs */ + RS2_OPTION_STREAM_FILTER, /**< Select a stream to process */ + RS2_OPTION_STREAM_FORMAT_FILTER, /**< Select a stream format to process */ + RS2_OPTION_STREAM_INDEX_FILTER, /**< Select a stream index to process */ + RS2_OPTION_COUNT /**< Number of enumeration values. Not a valid input: intended to be used in for-loops. */ + } rs2_option; + const char* rs2_option_to_string(rs2_option option); + + /** \brief For SR300 devices: provides optimized settings (presets) for specific types of usage. */ + typedef enum rs2_sr300_visual_preset + { + RS2_SR300_VISUAL_PRESET_SHORT_RANGE, /**< Preset for short range */ + RS2_SR300_VISUAL_PRESET_LONG_RANGE, /**< Preset for long range */ + RS2_SR300_VISUAL_PRESET_BACKGROUND_SEGMENTATION, /**< Preset for background segmentation */ + RS2_SR300_VISUAL_PRESET_GESTURE_RECOGNITION, /**< Preset for gesture recognition */ + RS2_SR300_VISUAL_PRESET_OBJECT_SCANNING, /**< Preset for object scanning */ + RS2_SR300_VISUAL_PRESET_FACE_ANALYTICS, /**< Preset for face analytics */ + RS2_SR300_VISUAL_PRESET_FACE_LOGIN, /**< Preset for face login */ + RS2_SR300_VISUAL_PRESET_GR_CURSOR, /**< Preset for GR cursor */ + RS2_SR300_VISUAL_PRESET_DEFAULT, /**< Camera default settings */ + RS2_SR300_VISUAL_PRESET_MID_RANGE, /**< Preset for mid-range */ + RS2_SR300_VISUAL_PRESET_IR_ONLY, /**< Preset for IR only */ + RS2_SR300_VISUAL_PRESET_COUNT /**< Number of enumeration values. Not a valid input: intended to be used in for-loops. */ + } rs2_sr300_visual_preset; + const char* rs2_sr300_visual_preset_to_string(rs2_sr300_visual_preset preset); + + /** \brief For RS400 devices: provides optimized settings (presets) for specific types of usage. */ + typedef enum rs2_rs400_visual_preset + { + RS2_RS400_VISUAL_PRESET_CUSTOM, + RS2_RS400_VISUAL_PRESET_DEFAULT, + RS2_RS400_VISUAL_PRESET_HAND, + RS2_RS400_VISUAL_PRESET_HIGH_ACCURACY, + RS2_RS400_VISUAL_PRESET_HIGH_DENSITY, + RS2_RS400_VISUAL_PRESET_MEDIUM_DENSITY, + RS2_RS400_VISUAL_PRESET_REMOVE_IR_PATTERN, + RS2_RS400_VISUAL_PRESET_COUNT + } rs2_rs400_visual_preset; + const char* rs2_rs400_visual_preset_to_string(rs2_rs400_visual_preset preset); + + /** + * check if an option is read-only + * \param[in] sensor the RealSense sensor + * \param[in] option option id to be checked + * \param[out] error if non-null, receives any error that occurs during this call, otherwise, errors are ignored + * \return true if option is read-only + */ + int rs2_is_option_read_only(const rs2_options* options, rs2_option option, rs2_error** error); + + /** + * read option value from the sensor + * \param[in] sensor the RealSense sensor + * \param[in] option option id to be queried + * \param[out] error if non-null, receives any error that occurs during this call, otherwise, errors are ignored + * \return value of the option + */ + float rs2_get_option(const rs2_options* options, rs2_option option, rs2_error** error); + + /** + * write new value to sensor option + * \param[in] sensor the RealSense sensor + * \param[in] option option id to be queried + * \param[in] value new value for the option + * \param[out] error if non-null, receives any error that occurs during this call, otherwise, errors are ignored + */ + void rs2_set_option(const rs2_options* options, rs2_option option, float value, rs2_error** error); + + /** + * check if particular option is supported by a subdevice + * \param[in] sensor the RealSense sensor + * \param[in] option option id to be checked + * \param[out] error if non-null, receives any error that occurs during this call, otherwise, errors are ignored + * \return true if option is supported + */ + int rs2_supports_option(const rs2_options* options, rs2_option option, rs2_error** error); + + /** + * retrieve the available range of values of a supported option + * \param[in] sensor the RealSense device + * \param[in] option the option whose range should be queried + * \param[out] min the minimum value which will be accepted for this option + * \param[out] max the maximum value which will be accepted for this option + * \param[out] step the granularity of options which accept discrete values, or zero if the option accepts continuous values + * \param[out] def the default value of the option + * \param[out] error if non-null, receives any error that occurs during this call, otherwise, errors are ignored + */ + void rs2_get_option_range(const rs2_options* sensor, rs2_option option, float* min, float* max, float* step, float* def, rs2_error** error); + + /** + * get option description + * \param[in] sensor the RealSense sensor + * \param[in] option option id to be checked + * \param[out] error if non-null, receives any error that occurs during this call, otherwise, errors are ignored + * \return human-readable option description + */ + const char* rs2_get_option_description(const rs2_options* options, rs2_option option, rs2_error ** error); + + /** + * get option value description (in case specific option value hold special meaning) + * \param[in] device the RealSense device + * \param[in] option option id to be checked + * \param[in] value value of the option + * \param[out] error if non-null, receives any error that occurs during this call, otherwise, errors are ignored + * \return human-readable description of a specific value of an option or null if no special meaning + */ + const char* rs2_get_option_value_description(const rs2_options* options, rs2_option option, float value, rs2_error ** error); #ifdef __cplusplus } diff --git a/libs/realsense2/include/librealsense2/h/rs_pipeline.h b/libs/realsense2/include/librealsense2/h/rs_pipeline.h old mode 100755 new mode 100644 index f617236..1018c77 --- a/libs/realsense2/include/librealsense2/h/rs_pipeline.h +++ b/libs/realsense2/include/librealsense2/h/rs_pipeline.h @@ -16,6 +16,7 @@ extern "C" { #include "rs_types.h" #include "rs_sensor.h" +#include "rs_config.h" /** * Create a pipeline instance @@ -111,7 +112,6 @@ extern "C" { */ rs2_pipeline_profile* rs2_pipeline_start(rs2_pipeline* pipe, rs2_error ** error); - /** * Start the pipeline streaming according to the configuraion. * The pipeline streaming loop captures samples from the device, and delivers them to the attached computer vision modules @@ -132,6 +132,72 @@ extern "C" { */ rs2_pipeline_profile* rs2_pipeline_start_with_config(rs2_pipeline* pipe, rs2_config* config, rs2_error ** error); + /** + * Start the pipeline streaming with its default configuration. + * The pipeline captures samples from the device, and delivers them to the through the provided frame callback. + * Starting the pipeline is possible only when it is not started. If the pipeline was started, an exception is raised. + * When starting the pipeline with a callback both \c wait_for_frames() or \c poll_for_frames() will throw exception. + * + * \param[in] pipe A pointer to an instance of the pipeline + * \param[in] on_frame function pointer to register as per-frame callback + * \param[in] user auxiliary data the user wishes to receive together with every frame callback + * \param[out] error If non-null, receives any error that occurs during this call, otherwise, errors are ignored + * \return The actual pipeline device and streams profile, which was successfully configured to the streaming device. + */ + rs2_pipeline_profile* rs2_pipeline_start_with_callback(rs2_pipeline* pipe, rs2_frame_callback_ptr on_frame, void* user, rs2_error ** error); + + /** + * Start the pipeline streaming with its default configuration. + * The pipeline captures samples from the device, and delivers them to the through the provided frame callback. + * Starting the pipeline is possible only when it is not started. If the pipeline was started, an exception is raised. + * When starting the pipeline with a callback both \c wait_for_frames() or \c poll_for_frames() will throw exception. + * + * \param[in] pipe A pointer to an instance of the pipeline + * \param[in] callback callback object created from c++ application. ownership over the callback object is moved into the relevant streaming lock + * \param[out] error If non-null, receives any error that occurs during this call, otherwise, errors are ignored + * \return The actual pipeline device and streams profile, which was successfully configured to the streaming device. + */ + rs2_pipeline_profile* rs2_pipeline_start_with_callback_cpp(rs2_pipeline* pipe, rs2_frame_callback* callback, rs2_error ** error); + + /** + * Start the pipeline streaming according to the configuraion. + * The pipeline captures samples from the device, and delivers them to the through the provided frame callback. + * Starting the pipeline is possible only when it is not started. If the pipeline was started, an exception is raised. + * When starting the pipeline with a callback both \c wait_for_frames() or \c poll_for_frames() will throw exception. + * The pipeline selects and activates the device upon start, according to configuration or a default configuration. + * When the rs2::config is provided to the method, the pipeline tries to activate the config \c resolve() result. If the application + * requests are conflicting with pipeline computer vision modules or no matching device is available on the platform, the method fails. + * Available configurations and devices may change between config \c resolve() call and pipeline start, in case devices are connected + * or disconnected, or another application acquires ownership of a device. + * + * \param[in] pipe A pointer to an instance of the pipeline + * \param[in] config A rs2::config with requested filters on the pipeline configuration. By default no filters are applied. + * \param[in] on_frame function pointer to register as per-frame callback + * \param[in] user auxiliary data the user wishes to receive together with every frame callback + * \param[out] error If non-null, receives any error that occurs during this call, otherwise, errors are ignored + * \return The actual pipeline device and streams profile, which was successfully configured to the streaming device. + */ + rs2_pipeline_profile* rs2_pipeline_start_with_config_and_callback(rs2_pipeline* pipe, rs2_config* config, rs2_frame_callback_ptr on_frame, void* user, rs2_error ** error); + + /** + * Start the pipeline streaming according to the configuraion. + * The pipeline captures samples from the device, and delivers them to the through the provided frame callback. + * Starting the pipeline is possible only when it is not started. If the pipeline was started, an exception is raised. + * When starting the pipeline with a callback both \c wait_for_frames() or \c poll_for_frames() will throw exception. + * The pipeline selects and activates the device upon start, according to configuration or a default configuration. + * When the rs2::config is provided to the method, the pipeline tries to activate the config \c resolve() result. If the application + * requests are conflicting with pipeline computer vision modules or no matching device is available on the platform, the method fails. + * Available configurations and devices may change between config \c resolve() call and pipeline start, in case devices are connected + * or disconnected, or another application acquires ownership of a device. + * + * \param[in] pipe A pointer to an instance of the pipeline + * \param[in] config A rs2::config with requested filters on the pipeline configuration. By default no filters are applied. + * \param[in] callback callback object created from c++ application. ownership over the callback object is moved into the relevant streaming lock + * \param[out] error If non-null, receives any error that occurs during this call, otherwise, errors are ignored + * \return The actual pipeline device and streams profile, which was successfully configured to the streaming device. + */ + rs2_pipeline_profile* rs2_pipeline_start_with_config_and_callback_cpp(rs2_pipeline* pipe, rs2_config* config, rs2_frame_callback* callback, rs2_error ** error); + /** * Return the active device and streams profiles, used by the pipeline. * The pipeline streams profiles are selected during \c start(). The method returns a valid result only when the pipeline is active - @@ -175,181 +241,6 @@ extern "C" { */ void rs2_delete_pipeline_profile(rs2_pipeline_profile* profile); - /** - * Create a config instance - * The config allows pipeline users to request filters for the pipeline streams and device selection and configuration. - * This is an optional step in pipeline creation, as the pipeline resolves its streaming device internally. - * Config provides its users a way to set the filters and test if there is no conflict with the pipeline requirements - * from the device. It also allows the user to find a matching device for the config filters and the pipeline, in order to - * select a device explicitly, and modify its controls before streaming starts. - * - * \param[out] error if non-null, receives any error that occurs during this call, otherwise, errors are ignored - * \return rs2_config* A pointer to a new config instance - */ - rs2_config* rs2_create_config(rs2_error** error); - - /** - * Deletes an instance of a config - * - * \param[in] config A pointer to an instance of a config - */ - void rs2_delete_config(rs2_config* config); - - /** - * Enable a device stream explicitly, with selected stream parameters. - * The method allows the application to request a stream with specific configuration. If no stream is explicitly enabled, the pipeline - * configures the device and its streams according to the attached computer vision modules and processing blocks requirements, or - * default configuration for the first available device. - * The application can configure any of the input stream parameters according to its requirement, or set to 0 for don't care value. - * The config accumulates the application calls for enable configuration methods, until the configuration is applied. Multiple enable - * stream calls for the same stream with conflicting parameters override each other, and the last call is maintained. - * Upon calling \c resolve(), the config checks for conflicts between the application configuration requests and the attached computer - * vision modules and processing blocks requirements, and fails if conflicts are found. Before \c resolve() is called, no conflict - * check is done. - * - * \param[in] config A pointer to an instance of a config - * \param[in] stream Stream type to be enabled - * \param[in] index Stream index, used for multiple streams of the same type. -1 indicates any. - * \param[in] width Stream image width - for images streams. 0 indicates any. - * \param[in] height Stream image height - for images streams. 0 indicates any. - * \param[in] format Stream data format - pixel format for images streams, of data type for other streams. RS2_FORMAT_ANY indicates any. - * \param[in] framerate Stream frames per second. 0 indicates any. - * \param[out] error if non-null, receives any error that occurs during this call, otherwise, errors are ignored - */ - void rs2_config_enable_stream(rs2_config* config, - rs2_stream stream, - int index, - int width, - int height, - rs2_format format, - int framerate, - rs2_error** error); - - /** - * Enable all device streams explicitly. - * The conditions and behavior of this method are similar to those of \c enable_stream(). - * This filter enables all raw streams of the selected device. The device is either selected explicitly by the application, - * or by the pipeline requirements or default. The list of streams is device dependent. - * - * \param[in] config A pointer to an instance of a config - * \param[out] error if non-null, receives any error that occurs during this call, otherwise, errors are ignored - */ - void rs2_config_enable_all_stream(rs2_config* config, rs2_error ** error); - - /** - * Select a specific device explicitly by its serial number, to be used by the pipeline. - * The conditions and behavior of this method are similar to those of \c enable_stream(). - * This method is required if the application needs to set device or sensor settings prior to pipeline streaming, to enforce - * the pipeline to use the configured device. - * - * \param[in] config A pointer to an instance of a config - * \param[in] serial device serial number, as returned by RS2_CAMERA_INFO_SERIAL_NUMBER - * \param[out] error if non-null, receives any error that occurs during this call, otherwise, errors are ignored - */ - void rs2_config_enable_device(rs2_config* config, const char* serial, rs2_error ** error); - - /** - * Select a recorded device from a file, to be used by the pipeline through playback. - * The device available streams are as recorded to the file, and \c resolve() considers only this device and configuration - * as available. - * This request cannot be used if enable_record_to_file() is called for the current config, and vise versa - * By default, playback is repeated once the file ends. To control this, see 'rs2_config_enable_device_from_file_repeat_option'. - * - * \param[in] config A pointer to an instance of a config - * \param[in] file The playback file of the device - * \param[out] error if non-null, receives any error that occurs during this call, otherwise, errors are ignored - */ - void rs2_config_enable_device_from_file(rs2_config* config, const char* file, rs2_error ** error); - - /** - * Select a recorded device from a file, to be used by the pipeline through playback. - * The device available streams are as recorded to the file, and \c resolve() considers only this device and configuration - * as available. - * This request cannot be used if enable_record_to_file() is called for the current config, and vise versa - * - * \param[in] config A pointer to an instance of a config - * \param[in] file The playback file of the device - * \param[in] repeat_playback if true, when file ends the playback starts again, in an infinite loop; - if false, when file ends playback does not start again, and should by stopped manually by the user. - * \param[out] error if non-null, receives any error that occurs during this call, otherwise, errors are ignored - */ - void rs2_config_enable_device_from_file_repeat_option(rs2_config* config, const char* file, int repeat_playback, rs2_error ** error); - - /** - * Requires that the resolved device would be recorded to file - * This request cannot be used if enable_device_from_file() is called for the current config, and vise versa - * - * \param[in] config A pointer to an instance of a config - * \param[in] file The desired file for the output record - * \param[out] error if non-null, receives any error that occurs during this call, otherwise, errors are ignored - */ - void rs2_config_enable_record_to_file(rs2_config* config, const char* file, rs2_error ** error); - - - /** - * Disable a device stream explicitly, to remove any requests on this stream type. - * The stream can still be enabled due to pipeline computer vision module request. This call removes any filter on the - * stream configuration. - * - * \param[in] config A pointer to an instance of a config - * \param[in] stream Stream type, for which the filters are cleared - * \param[out] error if non-null, receives any error that occurs during this call, otherwise, errors are ignored - */ - void rs2_config_disable_stream(rs2_config* config, rs2_stream stream, rs2_error ** error); - - /** - * Disable a device stream explicitly, to remove any requests on this stream profile. - * The stream can still be enabled due to pipeline computer vision module request. This call removes any filter on the - * stream configuration. - * - * \param[in] config A pointer to an instance of a config - * \param[in] stream Stream type, for which the filters are cleared - * \param[in] index Stream index, for which the filters are cleared - * \param[out] error if non-null, receives any error that occurs during this call, otherwise, errors are ignored - */ - void rs2_config_disable_indexed_stream(rs2_config* config, rs2_stream stream, int index, rs2_error ** error); - - /** - * Disable all device stream explicitly, to remove any requests on the streams profiles. - * The streams can still be enabled due to pipeline computer vision module request. This call removes any filter on the - * streams configuration. - * - * \param[in] config A pointer to an instance of a config - * \param[out] error if non-null, receives any error that occurs during this call, otherwise, errors are ignored - */ - void rs2_config_disable_all_streams(rs2_config* config, rs2_error ** error); - - /** - * Resolve the configuration filters, to find a matching device and streams profiles. - * The method resolves the user configuration filters for the device and streams, and combines them with the requirements of - * the computer vision modules and processing blocks attached to the pipeline. If there are no conflicts of requests, it looks - * for an available device, which can satisfy all requests, and selects the first matching streams configuration. In the absence - * of any request, the rs2::config selects the first available device and the first color and depth streams configuration. - * The pipeline profile selection during \c start() follows the same method. Thus, the selected profile is the same, if no - * change occurs to the available devices occurs. - * Resolving the pipeline configuration provides the application access to the pipeline selected device for advanced control. - * The returned configuration is not applied to the device, so the application doesn't own the device sensors. However, the - * application can call \c enable_device(), to enforce the device returned by this method is selected by pipeline \c start(), - * and configure the device and sensors options or extensions before streaming starts. - * - * \param[in] config A pointer to an instance of a config - * \param[in] pipe The pipeline for which the selected filters are applied - * \param[out] error if non-null, receives any error that occurs during this call, otherwise, errors are ignored - * \return A matching device and streams profile, which satisfies the filters and pipeline requests. - */ - rs2_pipeline_profile* rs2_config_resolve(rs2_config* config, rs2_pipeline* pipe, rs2_error ** error); - - /** - * Check if the config can resolve the configuration filters, to find a matching device and streams profiles. - * The resolution conditions are as described in \c resolve(). - * - * \param[in] config A pointer to an instance of a config - * \param[in] pipe The pipeline for which the selected filters are applied - * \param[out] error if non-null, receives any error that occurs during this call, otherwise, errors are ignored - * \return True if a valid profile selection exists, false if no selection can be found under the config filters and the available devices. - */ - int rs2_config_can_resolve(rs2_config* config, rs2_pipeline* pipe, rs2_error ** error); - #ifdef __cplusplus } #endif diff --git a/libs/realsense2/include/librealsense2/h/rs_processing.h b/libs/realsense2/include/librealsense2/h/rs_processing.h old mode 100755 new mode 100644 index 7836470..351f003 --- a/libs/realsense2/include/librealsense2/h/rs_processing.h +++ b/libs/realsense2/include/librealsense2/h/rs_processing.h @@ -187,6 +187,13 @@ rs2_processing_block* rs2_create_disparity_transform_block(unsigned char transfo */ rs2_processing_block* rs2_create_hole_filling_filter_block(rs2_error** error); +/** +* Creates a rates printer block. The printer prints the actual FPS of the invoked frame stream. +* The block ignores reapiting frames and calculats the FPS only if the frame number of the relevant frame was changed. +* \param[out] error if non-null, receives any error that occurs during this call, otherwise, errors are ignored +*/ +rs2_processing_block* rs2_create_rates_printer_block(rs2_error** error); + #ifdef __cplusplus } #endif diff --git a/libs/realsense2/include/librealsense2/h/rs_record_playback.h b/libs/realsense2/include/librealsense2/h/rs_record_playback.h old mode 100755 new mode 100644 index cddec6d..a540e6d --- a/libs/realsense2/include/librealsense2/h/rs_record_playback.h +++ b/libs/realsense2/include/librealsense2/h/rs_record_playback.h @@ -24,6 +24,7 @@ typedef enum rs2_playback_status RS2_PLAYBACK_STATUS_STOPPED, /**< All sensors were stopped, or playback has ended (all data was read). This is the initial playback status*/ RS2_PLAYBACK_STATUS_COUNT } rs2_playback_status; + const char* rs2_playback_status_to_string(rs2_playback_status status); typedef void (*rs2_playback_status_changed_callback_ptr)(rs2_playback_status); @@ -37,6 +38,16 @@ typedef void (*rs2_playback_status_changed_callback_ptr)(rs2_playback_status); */ rs2_device* rs2_create_record_device(const rs2_device* device, const char* file, rs2_error** error); +/** +* Creates a recording device to record the given device and save it to the given file +* \param[in] device The device to record +* \param[in] file The desired path to which the recorder should save the data +* \param[in] compression_enabled Indicates if compression is enabled, 0 means false, otherwise true +* \param[out] error If non-null, receives any error that occurs during this call, otherwise, errors are ignored +* \return A pointer to a device that records its data to file, or null in case of failure +*/ +rs2_device* rs2_create_record_device_ex(const rs2_device* device, const char* file, int compression_enabled, rs2_error** error); + /** * Pause the recording device without stopping the actual device from streaming. * Pausing will cause the device to stop writing new data to the file, in particular, frames and changes to extensions diff --git a/libs/realsense2/include/librealsense2/h/rs_sensor.h b/libs/realsense2/include/librealsense2/h/rs_sensor.h old mode 100755 new mode 100644 index 9120275..cb810d9 --- a/libs/realsense2/include/librealsense2/h/rs_sensor.h +++ b/libs/realsense2/include/librealsense2/h/rs_sensor.h @@ -56,7 +56,7 @@ typedef enum rs2_format { RS2_FORMAT_ANY , /**< When passed to enable stream, librealsense will try to provide best suited format */ RS2_FORMAT_Z16 , /**< 16-bit linear depth values. The depth is meters is equal to depth scale * pixel value. */ - RS2_FORMAT_DISPARITY16 , /**< 16-bit linear disparity values. The depth in meters is equal to depth scale / pixel value. */ + RS2_FORMAT_DISPARITY16 , /**< 16-bit float-point disparity values. Depth->Disparity conversion : Disparity = Baseline*FocalLength/Depth. */ RS2_FORMAT_XYZ32F , /**< 32-bit floating point 3D coordinates. */ RS2_FORMAT_YUYV , /**< 32-bit y0, u, y1, v data for every two pixels. Similar to YUV422 but packed in a different order - https://en.wikipedia.org/wiki/YUV */ RS2_FORMAT_RGB8 , /**< 8-bit red, green and blue channels */ diff --git a/libs/realsense2/include/librealsense2/h/rs_types.h b/libs/realsense2/include/librealsense2/h/rs_types.h old mode 100755 new mode 100644 diff --git a/libs/realsense2/include/librealsense2/hpp/rs_context.hpp b/libs/realsense2/include/librealsense2/hpp/rs_context.hpp old mode 100755 new mode 100644 index 6b383ce..541735d --- a/libs/realsense2/include/librealsense2/hpp/rs_context.hpp +++ b/libs/realsense2/include/librealsense2/hpp/rs_context.hpp @@ -49,7 +49,7 @@ namespace rs2 return res > 0; } - + /** * returns a list of all newly connected devices * \return the list of all new connected devices @@ -128,6 +128,21 @@ namespace rs2 return device_list(list); } + /** + * create a static snapshot of all connected devices at the time of the call + * \return the list of devices connected devices at the time of the call + */ + device_list query_devices(int mask) const + { + rs2_error* e = nullptr; + std::shared_ptr list( + rs2_query_devices_ex(_context.get(), mask, &e), + rs2_delete_device_list); + error::handle(e); + + return device_list(list); + } + /** * @brief Generate a flat list of all available sensors from all RealSense devices * @return List of sensors @@ -192,13 +207,14 @@ namespace rs2 rs2::error::handle(e); } + context(std::shared_ptr ctx) + : _context(ctx) + {} + explicit operator std::shared_ptr() { return _context; }; protected: friend class rs2::pipeline; friend class rs2::device_hub; - context(std::shared_ptr ctx) - : _context(ctx) - {} std::shared_ptr _context; }; @@ -209,11 +225,10 @@ namespace rs2 { public: explicit device_hub(context ctx) - : _ctx(std::move(ctx)) { rs2_error* e = nullptr; _device_hub = std::shared_ptr( - rs2_create_device_hub(_ctx._context.get(), &e), + rs2_create_device_hub(ctx._context.get(), &e), rs2_delete_device_hub); error::handle(e); } @@ -226,7 +241,7 @@ namespace rs2 { rs2_error* e = nullptr; std::shared_ptr dev( - rs2_device_hub_wait_for_device(_ctx._context.get(), _device_hub.get(), &e), + rs2_device_hub_wait_for_device(_device_hub.get(), &e), rs2_delete_device); error::handle(e); @@ -247,8 +262,10 @@ namespace rs2 return res > 0 ? true : false; } + + explicit operator std::shared_ptr() { return _device_hub; } + explicit device_hub(std::shared_ptr hub) : _device_hub(std::move(hub)) {} private: - context _ctx; std::shared_ptr _device_hub; }; diff --git a/libs/realsense2/include/librealsense2/hpp/rs_device.hpp b/libs/realsense2/include/librealsense2/hpp/rs_device.hpp old mode 100755 new mode 100644 index 917450d..8146727 --- a/libs/realsense2/include/librealsense2/hpp/rs_device.hpp +++ b/libs/realsense2/include/librealsense2/hpp/rs_device.hpp @@ -134,6 +134,9 @@ namespace rs2 virtual ~device() { } + + explicit operator std::shared_ptr() { return _dev; }; + explicit device(std::shared_ptr dev) : _dev(dev) {} protected: friend class rs2::context; friend class rs2::device_list; @@ -141,9 +144,7 @@ namespace rs2 friend class rs2::device_hub; std::shared_ptr _dev; - explicit device(std::shared_ptr dev) : _dev(dev) - { - } + }; class debug_protocol : public device @@ -283,6 +284,8 @@ namespace rs2 return _list.get(); } + operator std::shared_ptr() { return _list; }; + private: std::shared_ptr _list; }; diff --git a/libs/realsense2/include/librealsense2/hpp/rs_frame.hpp b/libs/realsense2/include/librealsense2/hpp/rs_frame.hpp old mode 100755 new mode 100644 index 14f8d00..b35ed2c --- a/libs/realsense2/include/librealsense2/hpp/rs_frame.hpp +++ b/libs/realsense2/include/librealsense2/hpp/rs_frame.hpp @@ -77,10 +77,10 @@ namespace rs2 */ bool operator==(const stream_profile& rhs) { - return stream_index() == rhs.stream_index()&& - stream_type() == rhs.stream_type()&& - format() == rhs.format()&& - fps() == rhs.fps(); + return stream_index() == rhs.stream_index() && + stream_type() == rhs.stream_type() && + format() == rhs.format() && + fps() == rhs.fps(); } /** @@ -139,10 +139,6 @@ namespace rs2 Operator implement, return the internal stream profile instance. * \return rs2_stream_profile* - internal instance to communicate with real implementation. */ - operator const rs2_stream_profile*() - { - return _profile; - } /** * Get the extrinsic transformation between two profiles (representing physical sensors) * \param[in] stream_profile to - the stream profile (another sensor) to be based to return the extrinsic @@ -169,12 +165,7 @@ namespace rs2 error::handle(e); } - protected: - friend class rs2::sensor; - friend class rs2::frame; - friend class rs2::pipeline_profile; - friend class software_sensor; - + bool is_cloned() { return bool(_clone); } explicit stream_profile(const rs2_stream_profile* profile) : _profile(profile) { rs2_error* e = nullptr; @@ -185,6 +176,14 @@ namespace rs2 error::handle(e); } + operator const rs2_stream_profile*() { return _profile; } + explicit operator std::shared_ptr() { return _clone; } + + protected: + friend class rs2::sensor; + friend class rs2::frame; + friend class rs2::pipeline_profile; + friend class software_sensor; const rs2_stream_profile* _profile; std::shared_ptr _clone; @@ -283,6 +282,17 @@ namespace rs2 } }; + + /** + Interface for frame filtering functionality + */ + class filter_interface + { + public: + virtual rs2::frame process(rs2::frame frame) const = 0; + virtual ~filter_interface() = default; + }; + class frame { public: @@ -294,16 +304,16 @@ namespace rs2 * Base class for multiple frame extensions with internal frame handle * \param[in] rs2_frame frame_ref - internal frame instance */ - frame(rs2_frame* frame_ref) : frame_ref(frame_ref) + frame(rs2_frame* ref) : frame_ref(ref) { #ifdef _DEBUG - if (frame_ref) + if (ref) { rs2_error* e = nullptr; - auto r = rs2_get_frame_number(frame_ref, &e); + auto r = rs2_get_frame_number(ref, &e); if (!e) frame_number = r; - auto s = rs2_get_frame_stream_profile(frame_ref, &e); + auto s = rs2_get_frame_stream_profile(ref, &e); if (!e) profile = stream_profile(s); } @@ -335,6 +345,7 @@ namespace rs2 swap(other); return *this; } + /** * Set the internal frame handle to the one in parameter, the function create additional reference if internal reference exist. * \param[in] frame other - another frame instance to be pointed to @@ -345,7 +356,7 @@ namespace rs2 if (frame_ref) add_ref(); #ifdef _DEBUG frame_number = other.frame_number; - profile = other.profile; + profile = other.profile; #endif } /** @@ -493,6 +504,12 @@ namespace rs2 * \return rs2_frame - internal frame handle. */ rs2_frame* get() const { return frame_ref; } + explicit operator rs2_frame*() { return frame_ref; } + + frame apply_filter(filter_interface& filter) + { + return filter.process(*this); + } protected: /** @@ -639,7 +656,6 @@ namespace rs2 if (get()) { - rs2_error* e = nullptr; _size = rs2_get_frame_points_count(get(), &e); error::handle(e); } @@ -774,10 +790,10 @@ namespace rs2 * Retrieve back the motion data from IMU sensor * \return rs2_vector - 3D vector in Euclidean coordinate space. */ - rs2_vector get_motion_data() + rs2_vector get_motion_data() const { auto data = reinterpret_cast(get_data()); - return rs2_vector{data[0], data[1], data[2]}; + return rs2_vector{ data[0], data[1], data[2] }; } }; @@ -836,24 +852,24 @@ namespace rs2 if (get()) { - rs2_error* e = nullptr; _size = rs2_embedded_frames_count(get(), &e); error::handle(e); } } /** - * Retrieve back the first frame of specific stream type, if no frame found, return the default one(frame instance) + * Retrieve back the first frame of specific stream and format types, if no frame found, return the default one(frame instance) * \param[in] rs2_stream s - frame to be retrieved from this stream type. + * \param[in] rs2_format f - frame to be retrieved from this format type. * \return frame - first found frame with s stream type. */ - frame first_or_default(rs2_stream s) const + frame first_or_default(rs2_stream s, rs2_format f = RS2_FORMAT_ANY) const { frame result; - foreach([&result, s](frame f) { - if (!result && f.get_profile().stream_type() == s) + foreach([&result, s, f](frame frm) { + if (!result && frm.get_profile().stream_type() == s && (f == RS2_FORMAT_ANY || f == frm.get_profile().format())) { - result = std::move(f); + result = std::move(frm); } }); return result; @@ -861,13 +877,14 @@ namespace rs2 /** * Retrieve back the first frame of specific stream type, if no frame found, error will be thrown * \param[in] rs2_stream s - frame to be retrieved from this stream type. + * \param[in] rs2_format f - frame to be retrieved from this format type. * \return frame - first found frame with s stream type. */ - frame first(rs2_stream s) const + frame first(rs2_stream s, rs2_format f = RS2_FORMAT_ANY) const { - auto f = first_or_default(s); - if (!f) throw error("Frame of requested stream type was not found!"); - return f; + auto frm = first_or_default(s, f); + if (!frm) throw error("Frame of requested stream type was not found!"); + return frm; } /** @@ -876,7 +893,7 @@ namespace rs2 */ depth_frame get_depth_frame() const { - auto f = first_or_default(RS2_STREAM_DEPTH); + auto f = first_or_default(RS2_STREAM_DEPTH, RS2_FORMAT_Z16); return f.as(); } /** @@ -909,9 +926,9 @@ namespace rs2 } else { - foreach([&f, index](const frame& frame) { - if (frame.get_profile().stream_type() == RS2_STREAM_INFRARED && frame.get_profile().stream_index() == index) - f = frame; + foreach([&f, index](const frame& frm) { + if (frm.get_profile().stream_type() == RS2_STREAM_INFRARED && + frm.get_profile().stream_index() == index) f = frm; }); } return f; @@ -979,7 +996,5 @@ namespace rs2 private: size_t _size; }; - - } #endif // LIBREALSENSE_RS2_FRAME_HPP diff --git a/libs/realsense2/include/librealsense2/hpp/rs_internal.hpp b/libs/realsense2/include/librealsense2/hpp/rs_internal.hpp old mode 100755 new mode 100644 index 7cf1048..338b4ce --- a/libs/realsense2/include/librealsense2/hpp/rs_internal.hpp +++ b/libs/realsense2/include/librealsense2/hpp/rs_internal.hpp @@ -89,7 +89,37 @@ namespace rs2 } /** - * Inject frame into the sensor + * Add motion stream to software sensor + * + * \param[in] motion all the parameters that required to defind motion stream + */ + stream_profile add_motion_stream(rs2_motion_stream motion_stream) + { + rs2_error* e = nullptr; + + stream_profile stream(rs2_software_sensor_add_motion_stream(_sensor.get(), motion_stream, &e)); + error::handle(e); + + return stream; + } + + /** + * Add pose stream to software sensor + * + * \param[in] pose all the parameters that required to defind pose stream + */ + stream_profile add_pose_stream(rs2_pose_stream pose_stream) + { + rs2_error* e = nullptr; + + stream_profile stream(rs2_software_sensor_add_pose_stream(_sensor.get(), pose_stream, &e)); + error::handle(e); + + return stream; + } + + /** + * Inject video frame into the sensor * * \param[in] frame all the parameters that required to define video frame */ @@ -100,6 +130,30 @@ namespace rs2 error::handle(e); } + /** + * Inject motion frame into the sensor + * + * \param[in] frame all the parameters that required to define motion frame + */ + void on_motion_frame(rs2_software_motion_frame frame) + { + rs2_error* e = nullptr; + rs2_software_sensor_on_motion_frame(_sensor.get(), frame, &e); + error::handle(e); + } + + /** + * Inject pose frame into the sensor + * + * \param[in] frame all the parameters that required to define pose frame + */ + void on_pose_frame(rs2_software_pose_frame frame) + { + rs2_error* e = nullptr; + rs2_software_sensor_on_pose_frame(_sensor.get(), frame, &e); + error::handle(e); + } + /** * Set frame metadata for the upcoming frames * \param[in] value metadata key to set diff --git a/libs/realsense2/include/librealsense2/hpp/rs_pipeline.hpp b/libs/realsense2/include/librealsense2/hpp/rs_pipeline.hpp old mode 100755 new mode 100644 index 120a80c..433a6f5 --- a/libs/realsense2/include/librealsense2/hpp/rs_pipeline.hpp +++ b/libs/realsense2/include/librealsense2/hpp/rs_pipeline.hpp @@ -102,12 +102,11 @@ namespace rs2 return _pipeline_profile != nullptr; } - private: + explicit operator std::shared_ptr() { return _pipeline_profile; } pipeline_profile(std::shared_ptr profile) : - _pipeline_profile(profile) - { + _pipeline_profile(profile){} + private: - } std::shared_ptr _pipeline_profile; friend class config; friend class pipeline; @@ -316,12 +315,14 @@ namespace rs2 { return _config; } - private: - config(std::shared_ptr config) : _config(config) + explicit operator std::shared_ptr() const { + return _config; } - std::shared_ptr _config; + config(std::shared_ptr cfg) : _config(cfg) {} + private: + std::shared_ptr _config; }; /** @@ -343,7 +344,6 @@ namespace rs2 * \param[in] ctx The context allocated by the application. Using the platform context by default. */ pipeline(context ctx = context()) - : _ctx(ctx) { rs2_error* e = nullptr; _pipeline = std::shared_ptr( @@ -403,6 +403,54 @@ namespace rs2 return pipeline_profile(p); } + /** + * Start the pipeline streaming with its default configuration. + * The pipeline captures samples from the device, and delivers them to the through the provided frame callback. + * Starting the pipeline is possible only when it is not started. If the pipeline was started, an exception is raised. + * When starting the pipeline with a callback both \c wait_for_frames() or \c poll_for_frames() will throw exception. + * + * \param[in] callback Stream callback, can be any callable object accepting rs2::frame + * \return The actual pipeline device and streams profile, which was successfully configured to the streaming device. + */ + template + pipeline_profile start(S callback) + { + rs2_error* e = nullptr; + auto p = std::shared_ptr( + rs2_pipeline_start_with_callback_cpp(_pipeline.get(), new frame_callback(callback), &e), + rs2_delete_pipeline_profile); + + error::handle(e); + return pipeline_profile(p); + } + + /** + * Start the pipeline streaming according to the configuraion. + * The pipeline captures samples from the device, and delivers them to the through the provided frame callback. + * Starting the pipeline is possible only when it is not started. If the pipeline was started, an exception is raised. + * When starting the pipeline with a callback both \c wait_for_frames() or \c poll_for_frames() will throw exception. + * The pipeline selects and activates the device upon start, according to configuration or a default configuration. + * When the rs2::config is provided to the method, the pipeline tries to activate the config \c resolve() result. + * If the application requests are conflicting with pipeline computer vision modules or no matching device is available on + * the platform, the method fails. + * Available configurations and devices may change between config \c resolve() call and pipeline start, in case devices + * are connected or disconnected, or another application acquires ownership of a device. + * + * \param[in] config A rs2::config with requested filters on the pipeline configuration. By default no filters are applied. + * \param[in] callback Stream callback, can be any callable object accepting rs2::frame + * \return The actual pipeline device and streams profile, which was successfully configured to the streaming device. + */ + template + pipeline_profile start(const config& config, S callback) + { + rs2_error* e = nullptr; + auto p = std::shared_ptr( + rs2_pipeline_start_with_config_and_callback_cpp(_pipeline.get(), config.get().get(), new frame_callback(callback), &e), + rs2_delete_pipeline_profile); + + error::handle(e); + return pipeline_profile(p); + } /** * Stop the pipeline streaming. @@ -509,9 +557,9 @@ namespace rs2 { return _pipeline; } + explicit pipeline(std::shared_ptr ptr) : _pipeline(ptr) {} private: - context _ctx; std::shared_ptr _pipeline; friend class config; }; diff --git a/libs/realsense2/include/librealsense2/hpp/rs_processing.hpp b/libs/realsense2/include/librealsense2/hpp/rs_processing.hpp old mode 100755 new mode 100644 index 66f5c8c..127d6fb --- a/libs/realsense2/include/librealsense2/hpp/rs_processing.hpp +++ b/libs/realsense2/include/librealsense2/hpp/rs_processing.hpp @@ -43,6 +43,16 @@ namespace rs2 error::handle(e); return result; } + + frame allocate_points(const stream_profile& profile, + const frame& original) const + { + rs2_error* e = nullptr; + auto result = rs2_allocate_points(_source, profile.get(), original.get(), &e); + error::handle(e); + return result; + } + /** * Allocate composite frame with given params * @@ -101,89 +111,6 @@ namespace rs2 void release() override { delete this; } }; - /** - * Define the processing block flow, inherit this class to generate your own processing_block. Best understanding is to refer to colorizer.h/cpp - */ - class processing_block : public options - { - public: - /** - * Start the processing block with callback function on_frame to inform the application the frame is processed. - * - * \param[in] on_frame callback function for noticing the frame to be processed is ready. - */ - template - void start(S on_frame) - { - rs2_error* e = nullptr; - rs2_start_processing(_block.get(), new frame_callback(on_frame), &e); - error::handle(e); - } - /** - * Does the same thing as "start" function - * - * \param[in] on_frame address of callback function for noticing the frame to be processed is ready. - * \return address of callback function. - */ - template - S& operator>>(S& on_frame) - { - start(on_frame); - return on_frame; - } - /** - * Ask processing block to process the frame - * - * \param[in] on_frame frame to be processed. - */ - void invoke(frame f) const - { - rs2_frame* ptr = nullptr; - std::swap(f.frame_ref, ptr); - - rs2_error* e = nullptr; - rs2_process_frame(_block.get(), ptr, &e); - error::handle(e); - } - /** - * Does the same thing as "invoke" function - */ - void operator()(frame f) const - { - invoke(std::move(f)); - } - /** - * constructor with already created low level processing block assigned. - * - * \param[in] block - low level rs2_processing_block created before. - */ - processing_block(std::shared_ptr block) - : options((rs2_options*)block.get()),_block(block) - { - } - - /** - * constructor with callback function on_frame in rs2_frame_processor_callback structure assigned. - * - * \param[in] processing_function - function pointer of on_frame function in rs2_frame_processor_callback structure, which will be called back by invoke function . - */ - template - processing_block(S processing_function) - { - rs2_error* e = nullptr; - _block = std::shared_ptr( - rs2_create_processing_block(new frame_processor_callback(processing_function),&e), - rs2_delete_processing_block); - options::operator=(_block); - error::handle(e); - } - - operator rs2_options*() const { return (rs2_options*)_block.get(); } - - private: - std::shared_ptr _block; - }; - class frame_queue { public: @@ -192,12 +119,12 @@ namespace rs2 * to help developers who are not using async APIs * param[in] capacity size of the frame queue */ - explicit frame_queue(unsigned int capacity): _capacity(capacity) + explicit frame_queue(unsigned int capacity) : _capacity(capacity) { rs2_error* e = nullptr; _queue = std::shared_ptr( - rs2_create_frame_queue(capacity, &e), - rs2_delete_frame_queue); + rs2_create_frame_queue(capacity, &e), + rs2_delete_frame_queue); error::handle(e); } @@ -272,29 +199,149 @@ namespace rs2 }; /** - * Generating the 3D point cloud base on depth frame also create the mapped texture. + * Define the processing block flow, inherit this class to generate your own processing_block. Best understanding is to refer to the viewer class in examples.hpp */ - class pointcloud : public options + class processing_block : public options { public: /** - * create pointcloud instance + * Start the processing block with callback function on_frame to inform the application the frame is processed. + * + * \param[in] on_frame callback function for noticing the frame to be processed is ready. */ - pointcloud() : _queue(1) + template + void start(S on_frame) { rs2_error* e = nullptr; + rs2_start_processing(get(), new frame_callback(on_frame), &e); + error::handle(e); + } + /** + * Does the same thing as "start" function + * + * \param[in] on_frame address of callback function for noticing the frame to be processed is ready. + * \return address of callback function. + */ + template + S& operator>>(S& on_frame) + { + start(on_frame); + return on_frame; + } + /** + * Ask processing block to process the frame + * + * \param[in] on_frame frame to be processed. + */ + void invoke(frame f) const + { + rs2_frame* ptr = nullptr; + std::swap(f.frame_ref, ptr); - auto pb = std::shared_ptr( - rs2_create_pointcloud(&e), - rs2_delete_processing_block); - _block = std::make_shared(pb); + rs2_error* e = nullptr; + rs2_process_frame(get(), ptr, &e); + error::handle(e); + } + /** + * constructor with already created low level processing block assigned. + * + * \param[in] block - low level rs2_processing_block created before. + */ + processing_block(std::shared_ptr block) + : _block(block), options((rs2_options*)block.get()) + { + } + /** + * constructor with callback function on_frame in rs2_frame_processor_callback structure assigned. + * + * \param[in] processing_function - function pointer of on_frame function in rs2_frame_processor_callback structure, which will be called back by invoke function . + */ + template + processing_block(S processing_function) + { + rs2_error* e = nullptr; + _block = std::shared_ptr( + rs2_create_processing_block(new frame_processor_callback(processing_function), &e), + rs2_delete_processing_block); + options::operator=(_block); error::handle(e); + } - // Redirect options API to the processing block - options::operator=(pb); + operator rs2_options*() const { return (rs2_options*)get(); } + rs2_processing_block* get() const { return _block.get(); } + protected: + std::shared_ptr _block; + }; - _block->start(_queue); + /** + * Define the processing block flow, inherit this class to generate your own processing_block. Best understanding is to refer to the viewer class in examples.hpp + */ + class filter : public processing_block, public filter_interface + { + public: + /** + * Ask processing block to process the frame and poll the processed frame from internal queue + * + * \param[in] on_frame frame to be processed. + * return processed frame + */ + rs2::frame process(rs2::frame frame) const override + { + invoke(frame); + rs2::frame f; + if (!_queue.poll_for_frame(&f)) + throw std::runtime_error("Error occured during execution of the processing block! See the log for more info"); + return f; + } + + /** + * constructor with already created low level processing block assigned. + * + * \param[in] block - low level rs2_processing_block created before. + */ + filter(std::shared_ptr block, int queue_size = 1) + : processing_block(block), + _queue(queue_size) + { + start(_queue); + } + + /** + * constructor with callback function on_frame in rs2_frame_processor_callback structure assigned. + * + * \param[in] processing_function - function pointer of on_frame function in rs2_frame_processor_callback structure, which will be called back by invoke function . + */ + template + filter(S processing_function, int queue_size = 1) : + processing_block(processing_function), + _queue(queue_size) + { + start(_queue); + } + + frame_queue get_queue() { return _queue; } + rs2_processing_block* get() const { return _block.get(); } + + protected: + frame_queue _queue; + }; + + /** + * Generating the 3D point cloud base on depth frame also create the mapped texture. + */ + class pointcloud : public filter + { + public: + /** + * create pointcloud instance + */ + pointcloud() : filter(init(), 1) {} + + pointcloud(rs2_stream stream, int index = 0) : filter(init(), 1) + { + set_option(RS2_OPTION_STREAM_FILTER, float(stream)); + set_option(RS2_OPTION_STREAM_INDEX_FILTER, float(index)); } /** * Generate the pointcloud and texture mappings of depth map. @@ -304,11 +351,19 @@ namespace rs2 */ points calculate(frame depth) { - _block->invoke(std::move(depth)); - rs2::frame f; - if (!_queue.poll_for_frame(&f)) - throw std::runtime_error("Error occured during execution of the processing block! See the log for more info"); - return points(f); + auto res = process(depth); + if (res.as()) + return res; + + if (auto set = res.as ()) + { + for (auto f : set) + { + if(f.as()) + return f; + } + } + throw std::runtime_error("Error occured during execution of the processing block! See the log for more info"); } /** * Map the point cloud to other frame. @@ -317,52 +372,50 @@ namespace rs2 */ void map_to(frame mapped) { - _block->set_option(RS2_OPTION_TEXTURE_SOURCE, float(mapped.get_profile().unique_id())); - _block->invoke(std::move(mapped)); + set_option(RS2_OPTION_STREAM_FILTER, float(mapped.get_profile().stream_type())); + set_option(RS2_OPTION_STREAM_FORMAT_FILTER, float(mapped.get_profile().format())); + set_option(RS2_OPTION_STREAM_INDEX_FILTER, float(mapped.get_profile().stream_index())); + invoke(mapped); } + private: friend class context; - std::shared_ptr _block; - frame_queue _queue; + std::shared_ptr init() + { + rs2_error* e = nullptr; + + auto block = std::shared_ptr( + rs2_create_pointcloud(&e), + rs2_delete_processing_block); + + error::handle(e); + + // Redirect options API to the processing block + //options::operator=(pb); + return block; + } }; - class asynchronous_syncer + class asynchronous_syncer : public processing_block { public: /** * Real asynchronous syncer within syncer class */ - asynchronous_syncer() + asynchronous_syncer() : processing_block(init()) {} + + private: + std::shared_ptr init() { rs2_error* e = nullptr; - _processing_block = std::make_shared( - std::shared_ptr( - rs2_create_sync_processing_block(&e), - rs2_delete_processing_block)); + auto block = std::shared_ptr( + rs2_create_sync_processing_block(&e), + rs2_delete_processing_block); error::handle(e); + return block; } - - /** - * Start and set the callback when the synchronization is done. - * \param[in] on_frame - callback function, will be invoked when synchronization is finished. - */ - template - void start(S on_frame) - { - _processing_block->start(on_frame); - } - /** - * Doing the actual synchronization work for the frame - * \param[in] f - frame to send to processing block to do the synchronization. - */ - void operator()(frame f) const - { - _processing_block->operator()(std::move(f)); - } - private: - std::shared_ptr _processing_block; }; class syncer @@ -375,7 +428,6 @@ namespace rs2 :_results(queue_size) { _sync.start(_results); - } /** @@ -423,7 +475,7 @@ namespace rs2 void operator()(frame f) const { - _sync(std::move(f)); + _sync.invoke(std::move(f)); } private: asynchronous_syncer _sync; @@ -431,83 +483,72 @@ namespace rs2 }; /** - Auxiliary processing block that performs image alignment using depth data and camera calibration + Auxiliary processing block that performs image alignment using depth data and camera calibration */ - class align + class align : public filter { public: /** - Create align processing block - Alignment is performed between a depth image and another image. - To perform alignment of a depth image to the other, set the align_to parameter with the other stream type. - To perform alignment of a non depth image to a depth image, set the align_to parameter to RS2_STREAM_DEPTH - Camera calibration and frame's stream type are determined on the fly, according to the first valid frameset passed to process() + Create align processing block + Alignment is performed between a depth image and another image. + To perform alignment of a depth image to the other, set the align_to parameter with the other stream type. + To perform alignment of a non depth image to a depth image, set the align_to parameter to RS2_STREAM_DEPTH + Camera calibration and frame's stream type are determined on the fly, according to the first valid frameset passed to process() - * \param[in] align_to The stream type to which alignment should be made. + * \param[in] align_to The stream type to which alignment should be made. */ - align(rs2_stream align_to) :_queue(1) - { - rs2_error* e = nullptr; - _block = std::make_shared( - std::shared_ptr( - rs2_create_align(align_to, &e), - rs2_delete_processing_block)); - error::handle(e); - - _block->start(_queue); - } + align(rs2_stream align_to) : filter(init(align_to), 1) {} /** * Run the alignment process on the given frames to get an aligned set of frames * - * \param[in] frame A pair of images, where at least one of which is a depth frame + * \param[in] frames A set of frames, where at least one of which is a depth frame * \return Input frames aligned to one another */ - frameset process(frameset frame) + frameset process(frameset frames) { - (*_block)(frame); - rs2::frame f; - if (!_queue.poll_for_frame(&f)) - throw std::runtime_error("Error occured during execution of the processing block! See the log for more info"); - return frameset(f); - } - /** - * Run the alignment process on the given frame - * - * \param[in] f - A pair of images, where at least one of which is a depth frame - * \return Input frames aligned to one another - */ - void operator()(frame f) const - { - (*_block)(std::move(f)); + return filter::process(frames); } + private: friend class context; + std::shared_ptr init(rs2_stream align_to) + { + rs2_error* e = nullptr; + auto block = std::shared_ptr( + rs2_create_align(align_to, &e), + rs2_delete_processing_block); + error::handle(e); - std::shared_ptr _block; - frame_queue _queue; + return block; + } }; - class colorizer : public options + class colorizer : public filter { public: /** * Create colorizer processing block * Colorizer generate color image base on input depth frame */ - colorizer() : _queue(1) + colorizer() : filter(init(), 1) { } + /** + * Create colorizer processing block + * Colorizer generate color image base on input depth frame + * \param[in] color_scheme - select one of the available color schemes: + * 0 - Jet + * 1 - Classic + * 2 - WhiteToBlack + * 3 - BlackToWhite + * 4 - Bio + * 5 - Cold + * 6 - Warm + * 7 - Quantized + * 8 - Pattern + */ + colorizer(float color_scheme) : filter(init(), 1) { - rs2_error* e = nullptr; - auto pb = std::shared_ptr( - rs2_create_colorizer(&e), - rs2_delete_processing_block); - _block = std::make_shared(pb); - error::handle(e); - - // Redirect options API to the processing block - options::operator=(pb); - - _block->start(_queue); + set_option(RS2_OPTION_COLOR_SCHEME, float(color_scheme)); } /** * Start to generate color image base on depth frame @@ -516,140 +557,114 @@ namespace rs2 */ video_frame colorize(frame depth) const { - if(depth) - { - _block->invoke(std::move(depth)); - rs2::frame f; - if (!_queue.poll_for_frame(&f)) - throw std::runtime_error("Error occured during execution of the processing block! See the log for more info"); - return video_frame(f); - } - return depth; + return process(depth); } - /** - * Same function as colorize(depth) - * \param[in] depth - depth frame to be processed to generate the color image - * \return video_frame - generated color image - */ - video_frame operator()(frame depth) const { return colorize(depth); } - private: - std::shared_ptr _block; - frame_queue _queue; - }; + private: + std::shared_ptr init() + { + rs2_error* e = nullptr; + auto block = std::shared_ptr( + rs2_create_colorizer(&e), + rs2_delete_processing_block); + error::handle(e); + + // Redirect options API to the processing block + //options::operator=(pb); - /** - Interface for frame processing functionality - */ - class process_interface : public options - { - public: - virtual rs2::frame process(rs2::frame frame) = 0; - virtual void operator()(frame f) const = 0; - virtual ~process_interface() = default; + return block; + } }; - class decimation_filter : public process_interface + class decimation_filter : public filter { public: /** * Create decimation filter processing block * decimation filter performing downsampling by using the median with specific kernel size */ - decimation_filter() :_queue(1) + decimation_filter() : filter(init(), 1) {} + /** + * Create decimation filter processing block + * decimation filter performing downsampling by using the median with specific kernel size + * \param[in] magnitude - number of filter iterations. + */ + decimation_filter(float magnitude) : filter(init(), 1) + { + set_option(RS2_OPTION_FILTER_MAGNITUDE, magnitude); + } + + private: + friend class context; + + std::shared_ptr init() { rs2_error* e = nullptr; - auto pb = std::shared_ptr( + auto block = std::shared_ptr( rs2_create_decimation_filter_block(&e), rs2_delete_processing_block); - _block = std::make_shared(pb); error::handle(e); // Redirect options API to the processing block - options::operator=(pb); + //options::operator=(this); - _block->start(_queue); - } - /** - * process the frame AND return the result - * \param[in] frame - depth frame to be processed - * \return rs2::frame - filtered frame - */ - rs2::frame process(rs2::frame frame) override - { - (*_block)(frame); - rs2::frame f; - if (!_queue.poll_for_frame(&f)) - throw std::runtime_error("Error occured during execution of the processing block! See the log for more info"); - return f; + return block; } - /** - * process the frame - * \param[in] frame - depth frame to be processed - */ - void operator()(frame f) const override - { - (*_block)(std::move(f)); - } - private: - friend class context; - - std::shared_ptr _block; - frame_queue _queue; }; - class temporal_filter : public process_interface + class temporal_filter : public filter { public: /** - * Create temporal filter processing block + * Create temporal filter processing block with default settings * temporal filter smooth the image by calculating multiple frames with alpha and delta settings * alpha defines the weight of current frame, delta defines threshold for edge classification and preserving. * For more information, check the temporal-filter.cpp */ - temporal_filter() :_queue(1) + temporal_filter() : filter(init(), 1) {} + /** + * Create temporal filter processing block with user settings + * temporal filter smooth the image by calculating multiple frames with alpha and delta settings + * \param[in] smooth_alpha - defines the weight of current frame. + * \param[in] smooth_delta - delta defines threshold for edge classification and preserving. + * \param[in] persistence_control - A set of predefined rules (masks) that govern when missing pixels will be replace with the last valid value so that the data will remain persistent over time: + * 0 - Disabled - Persistency filter is not activated and no hole filling occurs. + * 1 - Valid in 8/8 - Persistency activated if the pixel was valid in 8 out of the last 8 frames + * 2 - Valid in 2/last 3 - Activated if the pixel was valid in two out of the last 3 frames + * 3 - Valid in 2/last 4 - Activated if the pixel was valid in two out of the last 4 frames + * 4 - Valid in 2/8 - Activated if the pixel was valid in two out of the last 8 frames + * 5 - Valid in 1/last 2 - Activated if the pixel was valid in one of the last two frames + * 6 - Valid in 1/last 5 - Activated if the pixel was valid in one out of the last 5 frames + * 7 - Valid in 1/last 8 - Activated if the pixel was valid in one out of the last 8 frames + * 8 - Persist Indefinitely - Persistency will be imposed regardless of the stored history(most aggressive filtering) + * For more information, check the temporal-filter.cpp + */ + temporal_filter(float smooth_alpha, float smooth_delta, int persistence_control) : filter(init(), 1) + { + set_option(RS2_OPTION_HOLES_FILL, float(persistence_control)); + set_option(RS2_OPTION_FILTER_SMOOTH_ALPHA, float(smooth_alpha)); + set_option(RS2_OPTION_FILTER_SMOOTH_DELTA, float(smooth_delta)); + } + + private: + friend class context; + + std::shared_ptr init() { rs2_error* e = nullptr; - auto pb = std::shared_ptr( + auto block = std::shared_ptr( rs2_create_temporal_filter_block(&e), rs2_delete_processing_block); - _block = std::make_shared(pb); error::handle(e); // Redirect options API to the processing block - options::operator=(pb); + //options::operator=(pb); - _block->start(_queue); - } - /** - * process the frame AND return the result - * \param[in] frame - depth frame to be processed - * \return rs2::frame - filtered frame - */ - rs2::frame process(rs2::frame frame) override - { - (*_block)(frame); - rs2::frame f; - if (!_queue.poll_for_frame(&f)) - throw std::runtime_error("Error occured during execution of the processing block! See the log for more info"); - return f; + return block; } - /** - * process the frame - * \param[in] frame - depth frame to be processed - */ - void operator()(frame f) const override - { - (*_block)(std::move(f)); - } - private: - friend class context; - - std::shared_ptr _block; - frame_queue _queue; }; - class spatial_filter : public process_interface + class spatial_filter : public filter { public: /** @@ -659,148 +674,131 @@ namespace rs2 * delta defines the depth gradient below which the smoothing will occur as number of depth levels * For more information, check the spatial-filter.cpp */ - spatial_filter() :_queue(1) - { - rs2_error* e = nullptr; - auto pb = std::shared_ptr( - rs2_create_spatial_filter_block(&e), - rs2_delete_processing_block); - _block = std::make_shared(pb); - error::handle(e); - - // Redirect options API to the processing block - options::operator=(pb); - - _block->start(_queue); - } + spatial_filter() : filter(init(), 1) { } /** - * process the frame AND return the result - * \param[in] frame - depth frame to be processed - * \return rs2::frame - filtered frame + * Create spatial filter processing block + * spatial filter smooth the image by calculating frame with alpha and delta settings + * \param[in] smooth_alpha - defines the weight of the current pixel for smoothing is bounded within [25..100]% + * \param[in] smooth_delta - defines the depth gradient below which the smoothing will occur as number of depth levels + * \param[in] magnitude - number of filter iterations. + * \param[in] hole_fill - an in-place heuristic symmetric hole-filling mode applied horizontally during the filter passes. + * Intended to rectify minor artefacts with minimal performance impact */ - rs2::frame process(rs2::frame frame) override + spatial_filter(float smooth_alpha, float smooth_delta, float magnitude, float hole_fill) : filter(init(), 1) { - (*_block)(frame); - rs2::frame f; - if (!_queue.poll_for_frame(&f)) - throw std::runtime_error("Error occured during execution of the processing block! See the log for more info"); - return f; + set_option(RS2_OPTION_FILTER_SMOOTH_ALPHA, float(smooth_alpha)); + set_option(RS2_OPTION_FILTER_SMOOTH_DELTA, float(smooth_delta)); + set_option(RS2_OPTION_FILTER_MAGNITUDE, magnitude); + set_option(RS2_OPTION_HOLES_FILL, hole_fill); } - /** - * process the frame - * \param[in] frame - depth frame to be processed - */ - void operator()(frame f) const override - { - (*_block)(std::move(f)); - } private: friend class context; - std::shared_ptr _block; - frame_queue _queue; + std::shared_ptr init() + { + rs2_error* e = nullptr; + auto block = std::shared_ptr( + rs2_create_spatial_filter_block(&e), + rs2_delete_processing_block); + error::handle(e); + + // Redirect options API to the processing block + //options::operator=(pb); + + return block; + } }; - class disparity_transform : public process_interface + class disparity_transform : public filter { public: /** * Create disparity transform processing block * the processing convert the depth and disparity from each pixel */ - disparity_transform(bool transform_to_disparity=true) :_queue(1) + disparity_transform(bool transform_to_disparity = true) : filter(init(transform_to_disparity), 1) { } + + private: + friend class context; + std::shared_ptr init(bool transform_to_disparity) { rs2_error* e = nullptr; - auto pb = std::shared_ptr( - rs2_create_disparity_transform_block(uint8_t(transform_to_disparity),&e), + auto block = std::shared_ptr( + rs2_create_disparity_transform_block(uint8_t(transform_to_disparity), &e), rs2_delete_processing_block); - _block = std::make_shared(pb); error::handle(e); // Redirect options API to the processing block - options::operator=(pb); + //options::operator=(pb); - _block->start(_queue); + return block; } + }; + class hole_filling_filter : public filter + { + public: /** - * process the frame AND return the result - * \param[in] frame - depth frame to be processed - * \return rs2::frame - filtered frame + * Create hole filling processing block + * the processing perform the hole filling base on different hole filling mode. */ - rs2::frame process(rs2::frame frame) override - { - (*_block)(frame); - rs2::frame f; - if (!_queue.poll_for_frame(&f)) - throw std::runtime_error("Error occured during execution of the processing block! See the log for more info"); - return f; - } + hole_filling_filter() : filter(init(), 1) {} /** - * process the frame - * \param[in] frame - depth frame to be processed + * Create hole filling processing block + * the processing perform the hole filling base on different hole filling mode. + * \param[in] mode - select the hole fill mode: + * 0 - fill_from_left - Use the value from the left neighbor pixel to fill the hole + * 1 - farest_from_around - Use the value from the neighboring pixel which is furthest away from the sensor + * 2 - nearest_from_around - - Use the value from the neighboring pixel closest to the sensor */ - void operator()(frame f) const override + hole_filling_filter(int mode) : filter(init(), 1) { - (*_block)(std::move(f)); + set_option(RS2_OPTION_HOLES_FILL, float(mode)); } + private: friend class context; - std::shared_ptr _block; - frame_queue _queue; - }; - - class hole_filling_filter : public process_interface - { - public: - /** - * Create hole filling processing block - * the processing perform the hole filling base on different hole filling mode. - */ - hole_filling_filter() :_queue(1) + std::shared_ptr init() { rs2_error* e = nullptr; - auto pb = std::shared_ptr( + auto block = std::shared_ptr( rs2_create_hole_filling_filter_block(&e), rs2_delete_processing_block); - _block = std::make_shared(pb); error::handle(e); // Redirect options API to the processing block - options::operator=(pb); + //options::operator=(_block); - _block->start(_queue); - } - /** - * process the frame AND return the result - * \param[in] frame - depth frame to be processed - * \return rs2::frame - filtered frame - */ - rs2::frame process(rs2::frame frame) override - { - (*_block)(frame); - rs2::frame f; - if (!_queue.poll_for_frame(&f)) - throw std::runtime_error("Error occured during execution of the processing block! See the log for more info"); - return f; + return block; } + }; + + class rates_printer : public filter + { + public: /** - * process the frame - * \param[in] frame - depth frame to be processed + * Create hole filling processing block + * the processing perform the hole filling base on different hole filling mode. */ - void operator()(frame f) const override - { - (*_block)(std::move(f)); - } + rates_printer() : filter(init(), 1) {} + private: friend class context; - std::shared_ptr _block; - frame_queue _queue; + std::shared_ptr init() + { + rs2_error* e = nullptr; + auto block = std::shared_ptr( + rs2_create_rates_printer_block(&e), + rs2_delete_processing_block); + error::handle(e); + + return block; + } }; } #endif // LIBREALSENSE_RS2_PROCESSING_HPP diff --git a/libs/realsense2/include/librealsense2/hpp/rs_record_playback.hpp b/libs/realsense2/include/librealsense2/hpp/rs_record_playback.hpp old mode 100755 new mode 100644 index 8352023..8f127de --- a/libs/realsense2/include/librealsense2/hpp/rs_record_playback.hpp +++ b/libs/realsense2/include/librealsense2/hpp/rs_record_playback.hpp @@ -210,15 +210,31 @@ namespace rs2 * \param[in] file The desired path to which the recorder should save the data * \param[in] device The device to record */ - recorder(const std::string& file, rs2::device device) + recorder(const std::string& file, rs2::device dev) { rs2_error* e = nullptr; _dev = std::shared_ptr( - rs2_create_record_device(device.get().get(), file.c_str(), &e), + rs2_create_record_device(dev.get().get(), file.c_str(), &e), rs2_delete_device); rs2::error::handle(e); } + /** + * Creates a recording device to record the given device and save it to the given file as rosbag format + * \param[in] file The desired path to which the recorder should save the data + * \param[in] device The device to record + * \param[in] compression_enabled Indicates if compression is enabled + */ + recorder(const std::string& file, rs2::device dev, bool compression_enabled) + { + rs2_error* e = nullptr; + _dev = std::shared_ptr( + rs2_create_record_device_ex(dev.get().get(), file.c_str(), compression_enabled, &e), + rs2_delete_device); + rs2::error::handle(e); + } + + /** * Pause the recording device without stopping the actual device from streaming. */ diff --git a/libs/realsense2/include/librealsense2/hpp/rs_sensor.hpp b/libs/realsense2/include/librealsense2/hpp/rs_sensor.hpp old mode 100755 new mode 100644 index 21e41ec..96172b5 --- a/libs/realsense2/include/librealsense2/hpp/rs_sensor.hpp +++ b/libs/realsense2/include/librealsense2/hpp/rs_sensor.hpp @@ -9,21 +9,22 @@ namespace rs2 { + class notification { public: - notification(rs2_notification* notification) + notification(rs2_notification* nt) { rs2_error* e = nullptr; - _description = rs2_get_notification_description(notification, &e); + _description = rs2_get_notification_description(nt, &e); error::handle(e); - _timestamp = rs2_get_notification_timestamp(notification, &e); + _timestamp = rs2_get_notification_timestamp(nt, &e); error::handle(e); - _severity = rs2_get_notification_severity(notification, &e); + _severity = rs2_get_notification_severity(nt, &e); error::handle(e); - _category = rs2_get_notification_category(notification, &e); + _category = rs2_get_notification_category(nt, &e); error::handle(e); - _serialized_data = rs2_get_notification_serialized_data(notification, &e); + _serialized_data = rs2_get_notification_serialized_data(nt, &e); error::handle(e); } @@ -211,6 +212,8 @@ namespace rs2 _options = other._options; return *this; } + // if operator= is ok, this should be ok too + options(const options& other) : _options(other._options) {} virtual ~options() = default; protected: @@ -223,7 +226,6 @@ namespace rs2 return *this; } - options(const options& other) : _options(other._options) {} private: rs2_options* _options; @@ -349,7 +351,7 @@ namespace rs2 */ std::vector get_stream_profiles() const { - std::vector results; + std::vector results{}; rs2_error* e = nullptr; std::shared_ptr list( @@ -411,6 +413,12 @@ namespace rs2 return extension; } + explicit sensor(std::shared_ptr dev) + :options((rs2_options*)dev.get()), _sensor(dev) + { + } + explicit operator std::shared_ptr() { return _sensor; } + protected: friend context; friend device_list; @@ -420,10 +428,7 @@ namespace rs2 std::shared_ptr _sensor; - explicit sensor(std::shared_ptr dev) - :options((rs2_options*)dev.get()), _sensor(dev) - { - } + }; inline bool operator==(const sensor& lhs, const sensor& rhs) @@ -495,6 +500,7 @@ namespace rs2 } operator bool() const { return _sensor.get() != nullptr; } + explicit depth_sensor(std::shared_ptr dev) : depth_sensor(sensor(dev)) {} }; class depth_stereo_sensor : public depth_sensor diff --git a/libs/realsense2/include/librealsense2/hpp/rs_types.hpp b/libs/realsense2/include/librealsense2/hpp/rs_types.hpp old mode 100755 new mode 100644 diff --git a/libs/realsense2/include/librealsense2/rs.h b/libs/realsense2/include/librealsense2/rs.h old mode 100755 new mode 100644 index 1cebc0d..9907b76 --- a/libs/realsense2/include/librealsense2/rs.h +++ b/libs/realsense2/include/librealsense2/rs.h @@ -23,7 +23,7 @@ extern "C" { #include "h/rs_sensor.h" #define RS2_API_MAJOR_VERSION 2 -#define RS2_API_MINOR_VERSION 14 +#define RS2_API_MINOR_VERSION 17 #define RS2_API_PATCH_VERSION 0 #define RS2_API_BUILD_VERSION 0 diff --git a/libs/realsense2/include/librealsense2/rs.hpp b/libs/realsense2/include/librealsense2/rs.hpp old mode 100755 new mode 100644 diff --git a/libs/realsense2/include/librealsense2/rs_advanced_mode.h b/libs/realsense2/include/librealsense2/rs_advanced_mode.h old mode 100755 new mode 100644 diff --git a/libs/realsense2/include/librealsense2/rs_advanced_mode.hpp b/libs/realsense2/include/librealsense2/rs_advanced_mode.hpp old mode 100755 new mode 100644 diff --git a/libs/realsense2/include/librealsense2/rsutil.h b/libs/realsense2/include/librealsense2/rsutil.h old mode 100755 new mode 100644 index e6218b1..499bff4 --- a/libs/realsense2/include/librealsense2/rsutil.h +++ b/libs/realsense2/include/librealsense2/rsutil.h @@ -6,11 +6,14 @@ #include "h/rs_types.h" #include "h/rs_sensor.h" +#include "h/rs_frame.h" +#include "rs.h" #include "assert.h" - +#include +#include +#include #include - /* Given a point in 3D space, compute the corresponding pixel coordinates in an image with no distortion or forward distortion coefficients produced by the same camera */ static void rs2_project_point_to_pixel(float pixel[2], const struct rs2_intrinsics * intrin, const float point[3]) { @@ -80,4 +83,80 @@ static void rs2_fov(const struct rs2_intrinsics * intrin, float to_fov[2]) to_fov[1] = (atan2f(intrin->ppy + 0.5f, intrin->fy) + atan2f(intrin->height - (intrin->ppy + 0.5f), intrin->fy)) * 57.2957795f; } +static void next_pixel_in_line(float curr[2], const float start[2], const float end[2]) +{ + float line_slope = (end[1] - start[1]) / (end[0] - start[0]); + if (abs(end[0] - curr[0]) > abs(end[1] - curr[1])) + { + curr[0] = end[0] > curr[0] ? curr[0] + 1 : curr[0] - 1; + curr[1] = end[1] - line_slope * (end[0] - curr[0]); + } + else + { + curr[1] = end[1] > curr[1] ? curr[1] + 1 : curr[1] - 1; + curr[0] = end[0] - ((end[1] + curr[1]) / line_slope); + } +} + +static bool is_pixel_in_line(const float curr[2], const float start[2], const float end[2]) +{ + return ((end[0] >= start[0] && end[0] >= curr[0] && curr[0] >= start[0]) || (end[0] <= start[0] && end[0] <= curr[0] && curr[0] <= start[0])) && + ((end[1] >= start[1] && end[1] >= curr[1] && curr[1] >= start[1]) || (end[1] <= start[1] && end[1] <= curr[1] && curr[1] <= start[1])); +} + +static void adjust_2D_point_to_boundary(float p[2], int width, int height) +{ + if (p[0] < 0) p[0] = 0; + if (p[0] > width) p[0] = width; + if (p[1] < 0) p[1] = 0; + if (p[1] > height) p[1] = height; +} + +/* Find projected pixel with unknown depth search along line. */ +static void rs2_project_color_pixel_to_depth_pixel(float to_pixel[2], + const uint16_t* data, float depth_scale, + float depth_min, float depth_max, + const struct rs2_intrinsics* depth_intrin, + const struct rs2_intrinsics* color_intrin, + const struct rs2_extrinsics* color_to_depth, + const struct rs2_extrinsics* depth_to_color, + const float from_pixel[2]) +{ + //Find line start pixel + float start_pixel[2] = { 0 }, min_point[3] = { 0 }, min_transformed_point[3] = { 0 }; + rs2_deproject_pixel_to_point(min_point, color_intrin, from_pixel, depth_min); + rs2_transform_point_to_point(min_transformed_point, color_to_depth, min_point); + rs2_project_point_to_pixel(start_pixel, depth_intrin, min_transformed_point); + adjust_2D_point_to_boundary(start_pixel, depth_intrin->width, depth_intrin->height); + + //Find line end depth pixel + float end_pixel[2] = { 0 }, max_point[3] = { 0 }, max_transformed_point[3] = { 0 }; + rs2_deproject_pixel_to_point(max_point, color_intrin, from_pixel, depth_max); + rs2_transform_point_to_point(max_transformed_point, color_to_depth, max_point); + rs2_project_point_to_pixel(end_pixel, depth_intrin, max_transformed_point); + adjust_2D_point_to_boundary(end_pixel, depth_intrin->width, depth_intrin->height); + + //search along line for the depth pixel that it's projected pixel is the closest to the input pixel + float min_dist = -1; + for (float p[2] = { start_pixel[0], start_pixel[1] }; is_pixel_in_line(p, start_pixel, end_pixel); next_pixel_in_line(p, start_pixel, end_pixel)) + { + float depth = depth_scale * data[(int)p[1] * depth_intrin->width + (int)p[0]]; + if (depth == 0) + continue; + + float projected_pixel[2] = { 0 }, point[3] = { 0 }, transformed_point[3] = { 0 }; + rs2_deproject_pixel_to_point(point, depth_intrin, p, depth); + rs2_transform_point_to_point(transformed_point, depth_to_color, point); + rs2_project_point_to_pixel(projected_pixel, color_intrin, transformed_point); + + float new_dist = pow((projected_pixel[1] - from_pixel[1]), 2) + pow((projected_pixel[0] - from_pixel[0]), 2); + if (new_dist < min_dist || min_dist < 0) + { + min_dist = new_dist; + to_pixel[0] = p[0]; + to_pixel[1] = p[1]; + } + } +} + #endif From bdc8b520770d17609344e8d02e74e43630df7e68 Mon Sep 17 00:00:00 2001 From: Yi donghoon Date: Mon, 24 Dec 2018 04:28:26 +0900 Subject: [PATCH 2/4] realsense lib added && linux64 ldflags update --- addon_config.mk | 2 ++ .../realsense2/lib/linux64/librealsense2.so.2 | Bin 0 -> 15373872 bytes .../lib/linux64/librealsense2.so.2.17.0 | Bin 0 -> 15373872 bytes 3 files changed, 2 insertions(+) create mode 100755 libs/realsense2/lib/linux64/librealsense2.so.2 create mode 100755 libs/realsense2/lib/linux64/librealsense2.so.2.17.0 diff --git a/addon_config.mk b/addon_config.mk index 97af0a7..baf525a 100755 --- a/addon_config.mk +++ b/addon_config.mk @@ -26,6 +26,8 @@ vs: ADDON_DLLS_TO_COPY = dlls_to_copy linux64: + ADDON_LDFLAGS = ../../../addons/ofxRealsense2/libs/realsense2/lib/linux64/librealsense2.so + linuxarmv6l: linuxarmv7l: msys2: diff --git a/libs/realsense2/lib/linux64/librealsense2.so.2 b/libs/realsense2/lib/linux64/librealsense2.so.2 new file mode 100755 index 0000000000000000000000000000000000000000..4630d37ffd137204d261f2860548bcdfa95e5c84 GIT binary patch literal 15373872 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%0A?|}_1D0yhq(DW%2?dg zvWSPtoZu*K?j$_uy7X=S)@7gN?3}Aj9!w?^zYX*rv+mLAmG%}gAiCW1DN^|c2C~O; zl3VupRz`ror+1L!te6b;y-bWJOtklYTij%T3}C^Rim^z{qfE1;Fx*(rTfH}Q7y_%j zJFf3<^_B)+UUM!xk&1=GAqtLWWt*=iNT5;Iyu7oY-wfu07Ae5K`tZhNEqLUO1$9x6 zQvU0U7{0-90@C|9qr$exZ@wtUysuROIJ#-F>B<;(hz2u}fZw@|wlIvE%ot({n8}HJ zbzIN5y$pJ0q-=1_jC?{~J@xeLzZ&0f$KDxAw-zo6#HyA_W%Ky-mF7{7W~#ykyC)`h z_ROwyiv<7;UBZ8(a8K99dCJb8ye`Ok2qwWWh?4NQ@UF+FSj!J;#dHMjC3UV%;jku> zLp<7oXw8^NE{=}-NSdf}MIuL6Rl*cj-X^|aDuaGjWTxr(XTv;tx^NeuVa$u}zQoiS z+=%@UN7S!{+&C#ngIH#}kHjR^Pi;WWG61dcxYgh{1yZ=d{C4N%FAAed7fuTcG>3tWlaOY58t{^Y{OumZLrkm-{lGS#kz8WGC{cz5_0G_-eHM4U*7hYI>$~=QSDKO? zsOyslNRj3!&&BNOL8d$xnEq>TYAbBiD(Yxtc3P_#!(TNT(=jBepqLvQZU8biCr}nO zx!L7+ymQQ*V~*tHux|NIy26;Ey`+R2R|H$JZAI# =tuc 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

h-d67{_HtUEv0U@e>)V=cK3VxD_j)a~ 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

Lw(F^Qscp2)*Ed0U2 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

Euxq1>feoNQCiLV~e>UCd(pb`Vs!Rt{_HT<& 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