23 class l500_depth_sensor;
24 class l500_color_sensor;
38 const std::vector<platform::uvc_device_info>& all_device_infos);
68 void create_snapshot(std::shared_ptr<debug_interface>& snapshot)
const override;
79 void update_flash_internal(std::shared_ptr<hw_monitor> hwm,
const std::vector<uint8_t>& image, std::vector<uint8_t>& flash_backup,
144 auto diff = std::chrono::duration_cast<std::chrono::milliseconds>(
now - _last_update).
count();
146 while (diff < milliseconds)
148 std::this_thread::sleep_for(std::chrono::milliseconds(5));
150 diff = std::chrono::duration_cast<std::chrono::milliseconds>(
now - _last_update).
count();
std::shared_ptr< hw_monitor > _hw_monitor
std::vector< uint8_t > backup_flash(update_progress_callback_ptr callback) override
std::shared_ptr< synthetic_sensor > create_depth_device(std::shared_ptr< context > ctx, const std::vector< platform::uvc_device_info > &all_device_infos)
std::chrono::system_clock::time_point _last_update
ivcam2::extended_temperatures _temperatures
void start_temperatures_reader()
void notify_of_calibration_change(rs2_calibration_status status)
std::shared_ptr< sensor_base > get_raw_sensor() const
std::atomic_bool _have_temperatures
virtual l500_color_sensor * get_color_sensor()=0
void enter_update_state() const override
void enable_recording(std::function< void(const debug_interface &)> record_action) override
double get_device_time_ms() override
std::vector< rs2_option > _advanced_options
std::mutex _temperature_mutex
platform::usb_spec _usb_mode
std::shared_ptr< stream_interface > _depth_stream
void update_flash_internal(std::shared_ptr< hw_monitor > hwm, const std::vector< uint8_t > &image, std::vector< uint8_t > &flash_backup, update_progress_callback_ptr callback, int update_mode)
void trigger_device_calibration(rs2_calibration_type) override
GLenum GLenum GLsizei void * image
status
Defines return codes that SDK interfaces use. Negative values indicate errors, a zero value indicates...
std::shared_ptr< ivcam2::ac_trigger > _autocal
uint8_t _depth_device_idx
std::shared_ptr< rs2_update_progress_callback > update_progress_callback_ptr
std::shared_ptr< stream_interface > _confidence_stream
firmware_version _fw_version
void update_section(std::shared_ptr< hw_monitor > hwm, const std::vector< uint8_t > &merged_image, flash_section fs, uint32_t tables_size, update_progress_callback_ptr callback, float continue_from, float ratio)
std::shared_ptr< stream_interface > _ir_stream
l500_depth_sensor & get_depth_sensor()
command get_flash_logs_command() const
virtual void configure_depth_options()
void do_after_delay(std::function< void()> action, int milliseconds=2000)
lazy< ivcam2::intrinsic_depth > _calib_table
uvc_sensor & get_raw_depth_sensor()
command get_firmware_logs_command() const
sensor_interface & get_sensor(size_t subdevice) override
std::vector< uint8_t > send_receive_raw_data(const std::vector< uint8_t > &input) override
void stop_temperatures_reader()
void hardware_reset() override
std::shared_ptr< polling_error_handler > _polling_error_handler
GLenum GLenum GLenum input
std::thread _temperature_reader
void update_flash(const std::vector< uint8_t > &image, update_progress_callback_ptr callback, int update_mode) override
std::vector< calibration_change_callback_ptr > _calibration_change_callbacks
void wait(int milliseconds)
void register_calibration_change_callback(calibration_change_callback_ptr callback) override
void create_snapshot(std::shared_ptr< debug_interface > &snapshot) const override
void force_hardware_reset() const
l500_device(std::shared_ptr< context > ctx, const platform::backend_device_group &group)
std::atomic_bool _keep_reading_temperature
void update_flash_section(std::shared_ptr< hw_monitor > hwm, const std::vector< uint8_t > &image, uint32_t offset, uint32_t size, update_progress_callback_ptr callback, float continue_from, float ratio)
ivcam2::extended_temperatures get_temperatures() const
std::shared_ptr< rs2_calibration_change_callback > calibration_change_callback_ptr
synthetic_sensor & get_synthetic_depth_sensor()