Intel® RealSense™ Cross Platform API
Intel Realsense Cross-platform API
|
Go to the documentation of this file.
4 #ifndef LIBREALSENSE_RS2_INTERNAL_HPP
5 #define LIBREALSENSE_RS2_INTERNAL_HPP
10 #include "../h/rs_internal.h"
22 const std::string& section =
"",
26 _context = std::shared_ptr<rs2_context>(
44 const std::string& section =
"",
45 const std::string& min_api_version =
"0.0.0")
48 _context = std::shared_ptr<rs2_context>(
76 T on_destruction_function;
82 on_destruction_function();
222 range.
max, range.
step, range.
def, is_writable, &e);
262 std::shared_ptr<rs2_device> create_device_ptr(std::function<
void(
rs2_device*)> deleter)
265 std::shared_ptr<rs2_device> dev(
274 :
device(create_device_ptr(deleter))
293 std::shared_ptr<rs2_sensor>
sensor(
370 _fw_log_message(msg) {}
398 std::vector<uint8_t>
data()
const
403 std::vector<uint8_t> result;
408 result.insert(result.begin(), start, start +
size);
413 const std::shared_ptr<rs2_firmware_log_message>
get_message()
const {
return _fw_log_message; }
416 std::shared_ptr<rs2_firmware_log_message> _fw_log_message;
423 _parsed_fw_log(msg) {}
468 const std::shared_ptr<rs2_firmware_log_parsed_message>
get_message()
const {
return _parsed_fw_log; }
471 std::shared_ptr<rs2_firmware_log_parsed_message> _parsed_fw_log;
491 std::shared_ptr<rs2_firmware_log_message> msg(
502 std::shared_ptr<rs2_firmware_log_parsed_message> msg(
514 bool fw_log_pulling_status =
519 return fw_log_pulling_status;
526 bool flash_log_pulling_status =
531 return flash_log_pulling_status;
541 return parser_initialized;
551 return parsingResult;
562 _terminal_parser = std::shared_ptr<rs2_terminal_parser>(
572 std::shared_ptr<const rs2_raw_data_buffer> list(
582 std::vector<uint8_t> results;
583 results.insert(results.begin(), start, start + size);
588 std::string
parse_response(
const std::string& command,
const std::vector<uint8_t>& response)
592 std::shared_ptr<const rs2_raw_data_buffer> list(
594 (
void*)response.data(), response.size(), &e),
604 results.insert(results.begin(), start, start + size);
610 std::shared_ptr<rs2_terminal_parser> _terminal_parser;
614 #endif // LIBREALSENSE_RS2_INTERNAL_HPP
Definition: rs_device.hpp:19
rs2_device * rs2_create_software_device(rs2_error **error)
int rs2_is_sensor_extendable_to(const rs2_sensor *sensor, rs2_extension extension, rs2_error **error)
float step
Definition: rs_types.hpp:181
All the parameters required to define a sensor notification.
Definition: rs_internal.h:116
bool get_firmware_log(rs2::firmware_log_message &msg) const
Definition: rs_internal.hpp:510
const unsigned char * rs2_get_raw_data(const rs2_raw_data_buffer *buffer, rs2_error **error)
int rs2_init_fw_log_parser(rs2_device *dev, const char *xml_content, rs2_error **error)
Initializes RealSense firmware logs parser in device.
Definition: rs_frame.hpp:337
void rs2_context_add_software_device(rs2_context *ctx, rs2_device *dev, rs2_error **error)
rs2_stream_profile * rs2_software_sensor_add_pose_stream_ex(rs2_sensor *sensor, rs2_pose_stream pose_stream, int is_default, rs2_error **error)
const std::shared_ptr< rs2_firmware_log_parsed_message > get_message() const
Definition: rs_internal.hpp:468
bool parse_log(const rs2::firmware_log_message &msg, const rs2::firmware_log_parsed_message &parsed_msg)
Definition: rs_internal.hpp:544
Definition: rs_frame.hpp:23
stream_profile add_video_stream(rs2_video_stream video_stream, bool is_default=false)
Definition: rs_internal.hpp:96
void rs2_delete_fw_log_parsed_message(rs2_firmware_log_parsed_message *fw_log_parsed_msg)
Deletes RealSense firmware log parsed message.
const char * rs2_get_fw_log_parsed_thread_name(rs2_firmware_log_parsed_message *fw_log_parsed_msg, rs2_error **error)
Gets RealSense firmware log parsed message thread name.
Definition: rs_internal.hpp:261
std::string get_severity_str() const
Definition: rs_internal.hpp:378
uint32_t line() const
Definition: rs_internal.hpp:453
rs2_matchers
Specifies types of different matchers.
Definition: rs_types.h:220
rs2_stream_profile * rs2_software_sensor_add_motion_stream_ex(rs2_sensor *sensor, rs2_motion_stream motion_stream, int is_default, rs2_error **error)
void set_read_only_option(rs2_option option, float val)
Definition: rs_internal.hpp:206
firmware_log_parsed_message(std::shared_ptr< rs2_firmware_log_parsed_message > msg)
Definition: rs_internal.hpp:422
stream_profile add_pose_stream(rs2_pose_stream pose_stream, bool is_default=false)
Definition: rs_internal.hpp:128
rs2_log_severity get_severity() const
Definition: rs_internal.hpp:372
@ RS2_EXTENSION_FW_LOGGER
Definition: rs_types.h:209
Definition: rs_internal.hpp:367
rs2_raw_data_buffer * rs2_terminal_parse_response(rs2_terminal_parser *terminal_parser, const char *command, unsigned int size_of_command, const void *response, unsigned int size_of_response, rs2_error **error)
Parses terminal response via RealSense terminal parser.
std::string severity() const
Definition: rs_internal.hpp:446
rs2::firmware_log_parsed_message create_parsed_message()
Definition: rs_internal.hpp:499
void rs2_delete_raw_data(const rs2_raw_data_buffer *buffer)
software_sensor add_sensor(std::string name)
Definition: rs_internal.hpp:290
software_device(std::function< void(rs2_device *)> deleter=&rs2_delete_device)
Definition: rs_internal.hpp:273
void rs2_delete_context(rs2_context *context)
Frees the relevant context object.
const unsigned char * rs2_fw_log_message_data(rs2_firmware_log_message *msg, rs2_error **error)
Gets RealSense firmware log message data.
uint32_t get_timestamp() const
Definition: rs_internal.hpp:382
@ RS2_RECORDING_MODE_BLANK_FRAMES
Definition: rs_internal.h:27
bool get_flash_log(rs2::firmware_log_message &msg) const
Definition: rs_internal.hpp:522
void set_metadata(rs2_frame_metadata_value value, rs2_metadata_type type)
Definition: rs_internal.hpp:180
rs2_firmware_log_parsed_message * rs2_create_fw_log_parsed_message(rs2_device *dev, rs2_error **error)
Creates RealSense firmware log parsed message.
unsigned int rs2_get_fw_log_parsed_timestamp(rs2_firmware_log_parsed_message *fw_log_parsed_msg, rs2_error **error)
Gets RealSense firmware log parsed message timestamp.
Definition: rs_internal.hpp:420
void release() override
Definition: rs_internal.hpp:85
void rs2_software_device_create_matcher(rs2_device *dev, rs2_matchers matcher, rs2_error **error)
int rs2_parse_firmware_log(rs2_device *dev, rs2_firmware_log_message *fw_log_msg, rs2_firmware_log_parsed_message *parsed_msg, rs2_error **error)
Gets RealSense firmware log parser.
int rs2_get_raw_data_size(const rs2_raw_data_buffer *buffer, rs2_error **error)
rs2_log_severity
Severity of the librealsense logger.
Definition: rs_types.h:147
void register_info(rs2_camera_info info, const std::string &val)
Definition: rs_internal.hpp:334
Definition: rs_types.hpp:177
rs2_terminal_parser * rs2_create_terminal_parser(const char *xml_content, rs2_error **error)
Creates RealSense terminal parser.
void on_motion_frame(rs2_software_motion_frame frame)
Definition: rs_internal.hpp:156
mock_context(const std::string &filename, const std::string §ion="", const std::string &min_api_version="0.0.0")
Definition: rs_internal.hpp:43
int rs2_get_fw_log(rs2_device *dev, rs2_firmware_log_message *fw_log_msg, rs2_error **error)
Gets RealSense firmware log.
void rs2_software_device_update_info(rs2_device *dev, rs2_camera_info info, const char *val, rs2_error **error)
@ RS2_CAMERA_INFO_NAME
Definition: rs_sensor.h:23
rs2_raw_data_buffer * rs2_terminal_parse_command(rs2_terminal_parser *terminal_parser, const char *command, unsigned int size_of_command, rs2_error **error)
Parses terminal command via RealSense terminal parser.
const char * rs2_get_fw_log_parsed_file_name(rs2_firmware_log_parsed_message *fw_log_parsed_msg, rs2_error **error)
Gets RealSense firmware log parsed message file name.
void on_video_frame(rs2_software_video_frame frame)
Definition: rs_internal.hpp:144
Definition: rs_internal.hpp:89
stream_profile add_motion_stream(rs2_motion_stream motion_stream, bool is_default=false)
Definition: rs_internal.hpp:112
double get_time()
Definition: rs_internal.hpp:62
All the parameters required to define a pose frame.
Definition: rs_internal.h:94
std::string file_name() const
Definition: rs_internal.hpp:432
std::shared_ptr< rs2_context > _context
Definition: rs_context.hpp:218
All the parameters required to define a video stream.
Definition: rs_internal.h:35
Definition: rs_internal.hpp:556
void rs2_delete_sensor(rs2_sensor *sensor)
Definition: rs_types.hpp:49
void rs2_software_device_set_destruction_callback_cpp(const rs2_device *dev, rs2_software_device_destruction_callback *callback, rs2_error **error)
const std::shared_ptr< rs2_device > & get() const
Definition: rs_device.hpp:116
All the parameters required to define a video frame.
Definition: rs_internal.h:70
float min
Definition: rs_types.hpp:178
Definition: rs_internal.hpp:75
rs2_time_t rs2_get_time(rs2_error **error)
software_device_destruction_callback(T on_destruction)
Definition: rs_internal.hpp:78
std::shared_ptr< rs2_device > _dev
Definition: rs_device.hpp:146
std::string parse_response(const std::string &command, const std::vector< uint8_t > &response)
Definition: rs_internal.hpp:588
struct rs2_firmware_log_message rs2_firmware_log_message
Definition: rs_types.h:277
int rs2_get_flash_log(rs2_device *dev, rs2_firmware_log_message *fw_log_msg, rs2_error **error)
Gets RealSense flash log - this is a fw log that has been written in the device during the previous s...
std::string thread_name() const
Definition: rs_internal.hpp:439
void create_matcher(rs2_matchers matcher)
Definition: rs_internal.hpp:358
@ RS2_EXTENSION_SOFTWARE_SENSOR
Definition: rs_types.h:186
Definition: rs_context.hpp:12
long long rs2_metadata_type
Definition: rs_types.h:290
Definition: rs_sensor.hpp:103
int rs2_fw_log_message_size(rs2_firmware_log_message *msg, rs2_error **error)
Gets RealSense firmware log message size.
void add_to(context &ctx)
Definition: rs_internal.hpp:321
void rs2_delete_device(rs2_device *device)
const char * rs2_log_severity_to_string(rs2_log_severity info)
rs2_context * rs2_create_mock_context_versioned(int api_version, const char *filename, const char *section, const char *min_api_version, rs2_error **error)
Definition: rs_internal.hpp:475
void rs2_software_sensor_add_option(rs2_sensor *sensor, rs2_option option, float min, float max, float step, float def, int is_writable, rs2_error **error)
unsigned int rs2_fw_log_message_timestamp(rs2_firmware_log_message *msg, rs2_error **error)
Gets RealSense firmware log message timestamp.
rs2_option
Defines general configuration controls. These can generally be mapped to camera UVC controls,...
Definition: rs_option.h:23
void rs2_software_sensor_on_notification(rs2_sensor *sensor, rs2_software_notification notif, rs2_error **error)
bool init_parser(const std::string &xml_content)
Definition: rs_internal.hpp:534
recording_context()=delete
void rs2_software_sensor_set_metadata(rs2_sensor *sensor, rs2_frame_metadata_value value, rs2_metadata_type type, rs2_error **error)
rs2_firmware_log_message * rs2_create_fw_log_message(rs2_device *dev, rs2_error **error)
Creates RealSense firmware log message.
void rs2_software_sensor_on_motion_frame(rs2_sensor *sensor, rs2_software_motion_frame frame, rs2_error **error)
unsigned int rs2_get_fw_log_parsed_line(rs2_firmware_log_parsed_message *fw_log_parsed_msg, rs2_error **error)
Gets RealSense firmware log parsed message relevant line (in the file that is returned by rs2_get_fw_...
void detach()
Definition: rs_internal.hpp:237
void rs2_software_device_register_info(rs2_device *dev, rs2_camera_info info, const char *val, rs2_error **error)
void rs2_software_sensor_detach(rs2_sensor *sensor, rs2_error **error)
void on_notification(rs2_software_notification notif)
Definition: rs_internal.hpp:226
std::string message() const
Definition: rs_internal.hpp:425
software_device(std::string name)
Definition: rs_internal.hpp:279
firmware_log_message(std::shared_ptr< rs2_firmware_log_message > msg)
Definition: rs_internal.hpp:369
rs2_camera_info
Read-only strings that can be queried from the device. Not all information attributes are available o...
Definition: rs_sensor.h:22
float max
Definition: rs_types.hpp:179
void rs2_software_sensor_add_read_only_option(rs2_sensor *sensor, rs2_option option, float val, rs2_error **error)
void add_read_only_option(rs2_option option, float val)
Definition: rs_internal.hpp:193
rs2_log_severity rs2_get_fw_log_parsed_severity(rs2_firmware_log_parsed_message *fw_log_parsed_msg, rs2_error **error)
Gets RealSense firmware log parsed message severity.
void on_pose_frame(rs2_software_pose_frame frame)
Definition: rs_internal.hpp:168
rs2_sensor * rs2_software_device_add_sensor(rs2_device *dev, const char *sensor_name, rs2_error **error)
std::shared_ptr< rs2_sensor > _sensor
Definition: rs_sensor.hpp:352
void on_destruction() override
Definition: rs_internal.hpp:80
#define RS2_API_VERSION
Definition: rs.h:41
Definition: rs_context.hpp:97
void update_info(rs2_camera_info info, const std::string &val)
Definition: rs_internal.hpp:347
void rs2_software_sensor_on_video_frame(rs2_sensor *sensor, rs2_software_video_frame frame, rs2_error **error)
struct rs2_device rs2_device
Definition: rs_types.h:246
rs2::firmware_log_message create_message()
Definition: rs_internal.hpp:488
rs2_recording_mode
Definition: rs_internal.h:26
rs2_stream_profile * rs2_software_sensor_add_video_stream_ex(rs2_sensor *sensor, rs2_video_stream video_stream, int is_default, rs2_error **error)
const char * rs2_get_fw_log_parsed_message(rs2_firmware_log_parsed_message *fw_log_parsed_msg, rs2_error **error)
Gets RealSense firmware log parsed message.
std::vector< uint8_t > data() const
Definition: rs_internal.hpp:398
void rs2_delete_terminal_parser(rs2_terminal_parser *terminal_parser)
Deletes RealSense terminal parser.
void rs2_software_sensor_on_pose_frame(rs2_sensor *sensor, rs2_software_pose_frame frame, rs2_error **error)
static void handle(rs2_error *e)
Definition: rs_types.hpp:144
rs2_context * rs2_create_recording_context(int api_version, const char *filename, const char *section, rs2_recording_mode mode, rs2_error **error)
void rs2_delete_fw_log_message(rs2_firmware_log_message *msg)
int size() const
Definition: rs_internal.hpp:390
terminal_parser(const std::string &xml_content)
Definition: rs_internal.hpp:558
firmware_logger(device d)
Definition: rs_internal.hpp:477
std::vector< uint8_t > parse_command(const std::string &command)
Definition: rs_internal.hpp:568
Definition: rs_internal.hpp:15
rs2_frame_metadata_value
Per-Frame-Metadata is the set of read-only properties that might be exposed for each individual frame...
Definition: rs_frame.h:30
const std::shared_ptr< rs2_firmware_log_message > get_message() const
Definition: rs_internal.hpp:413
Definition: rs_internal.hpp:36
uint32_t timestamp() const
Definition: rs_internal.hpp:460
float def
Definition: rs_types.hpp:180
All the parameters required to define a pose stream.
Definition: rs_internal.h:60
All the parameters required to define a motion stream.
Definition: rs_internal.h:49
All the parameters required to define a motion frame.
Definition: rs_internal.h:83
rs2_log_severity rs2_fw_log_message_severity(const rs2_firmware_log_message *msg, rs2_error **error)
Gets RealSense firmware log message severity.
struct rs2_error rs2_error
Definition: rs_types.h:247
int rs2_is_device_extendable_to(const rs2_device *device, rs2_extension extension, rs2_error **error)
void add_option(rs2_option option, const option_range &range, bool is_writable=true)
Definition: rs_internal.hpp:218
recording_context(const std::string &filename, const std::string §ion="", rs2_recording_mode mode=RS2_RECORDING_MODE_BLANK_FRAMES)
Definition: rs_internal.hpp:21
void rs2_software_sensor_update_read_only_option(rs2_sensor *sensor, rs2_option option, float val, rs2_error **error)
void set_destruction_callback(T callback) const
Definition: rs_internal.hpp:306