Classes | Public Member Functions | Protected Member Functions | Private Member Functions | Private Attributes | List of all members
librealsense::uvc_sensor Class Reference

#include <sensor.h>

Inheritance diagram for librealsense::uvc_sensor:
Inheritance graph


struct  power

Public Member Functions

void close () override
std::vector< platform::stream_profileget_configuration () const
std::string get_device_path () const
platform::usb_spec get_usb_specification () const
std::shared_ptr< platform::uvc_deviceget_uvc_device ()
template<class T >
auto invoke_powered (T action) -> decltype(action(*static_cast< platform::uvc_device * >(nullptr)))
void open (const stream_profiles &requests) override
void register_pu (rs2_option id)
void register_xu (platform::extension_unit xu)
void start (frame_callback_ptr callback) override
void stop () override
 uvc_sensor (std::string name, std::shared_ptr< platform::uvc_device > uvc_device, std::unique_ptr< frame_timestamp_reader > timestamp_reader, device *dev)
virtual ~uvc_sensor () override
- Public Member Functions inherited from librealsense::sensor_base
rs2_format fourcc_to_rs2_format (uint32_t format) const
rs2_stream fourcc_to_rs2_stream (uint32_t fourcc_format) const
stream_profiles get_active_streams () const override
device_interfaceget_device () override
std::shared_ptr< std::map< uint32_t, rs2_format > > & get_fourcc_to_rs2_format_map ()
std::shared_ptr< std::map< uint32_t, rs2_stream > > & get_fourcc_to_rs2_stream_map ()
virtual frame_callback_ptr get_frames_callback () const override
const std::stringget_info (rs2_camera_info info) const override
notifications_callback_ptr get_notifications_callback () const override
virtual std::shared_ptr< notifications_processorget_notifications_processor () const
processing_blocks get_recommended_processing_blocks () const override
stream_profiles get_stream_profiles (int tag=profile_tag::PROFILE_TAG_ANY) const override
virtual bool is_opened () const
bool is_streaming () const override
int register_before_streaming_changes_callback (std::function< void(bool)> callback) override
virtual void register_metadata (rs2_frame_metadata_value metadata, std::shared_ptr< md_attribute_parser_base > metadata_parser) const
void register_notifications_callback (notifications_callback_ptr callback) override
void register_on_open (on_open callback)
 sensor_base (std::string name, device *device, recommended_proccesing_blocks_interface *owner)
virtual void set_frames_callback (frame_callback_ptr callback) override
void set_source_owner (sensor_base *owner)
bool supports_info (rs2_camera_info info) const override
void unregister_before_start_callback (int token) override
virtual ~sensor_base () override
- Public Member Functions inherited from librealsense::sensor_interface
virtual ~sensor_interface ()=default
- Public Member Functions inherited from librealsense::info_interface
virtual ~info_interface ()=default
- Public Member Functions inherited from librealsense::recordable< info_interface >
virtual ~recordable ()=default
- Public Member Functions inherited from librealsense::options_interface
virtual ~options_interface ()=default
- Public Member Functions inherited from librealsense::recordable< options_interface >
virtual ~recordable ()=default
- Public Member Functions inherited from librealsense::recommended_proccesing_blocks_interface
virtual ~recommended_proccesing_blocks_interface ()=default
- Public Member Functions inherited from librealsense::options_container
void create_snapshot (std::shared_ptr< options_interface > &snapshot) const override
void enable_recording (std::function< void(const options_interface &)> record_action) override
optionget_option (rs2_option id) override
const optionget_option (rs2_option id) const override
std::shared_ptr< optionget_option_handler (rs2_option id)
std::shared_ptr< optionget_option_handler (rs2_option id) const
virtual const char * get_option_name (rs2_option option) const override
std::vector< rs2_optionget_supported_options () const override
void register_option (rs2_option id, std::shared_ptr< option > option)
bool supports_option (rs2_option id) const override
void unregister_option (rs2_option id)
void update (std::shared_ptr< extension_snapshot > ext) override
- Public Member Functions inherited from librealsense::extension_snapshot
virtual ~extension_snapshot ()=default
- Public Member Functions inherited from librealsense::info_container
void create_snapshot (std::shared_ptr< info_interface > &snapshot) const override
void enable_recording (std::function< void(const info_interface &)> record_action) override
void register_info (rs2_camera_info info, const std::string &val)
void update (std::shared_ptr< extension_snapshot > ext) override
void update_info (rs2_camera_info info, const std::string &val)
- Public Member Functions inherited from librealsense::recommended_proccesing_blocks_base
virtual void create_snapshot (std::shared_ptr< recommended_proccesing_blocks_interface > &snapshot) const override
virtual void enable_recording (std::function< void(const recommended_proccesing_blocks_interface &)> recording_function) override
 recommended_proccesing_blocks_base (recommended_proccesing_blocks_interface *owner)
- Public Member Functions inherited from librealsense::recordable< recommended_proccesing_blocks_interface >
virtual ~recordable ()=default

Protected Member Functions

stream_profiles init_stream_profiles () override
rs2_extension stream_to_frame_types (rs2_stream stream) const
- Protected Member Functions inherited from librealsense::sensor_base
void assign_stream (const std::shared_ptr< stream_interface > &stream, std::shared_ptr< stream_profile_interface > target) const
std::shared_ptr< framegenerate_frame_from_data (const platform::frame_object &fo, frame_timestamp_reader *timestamp_reader, const rs2_time_t &last_timestamp, const unsigned long long &last_frame_number, std::shared_ptr< stream_profile_interface > profile)
void raise_on_before_streaming_changes (bool streaming)
void set_active_streams (const stream_profiles &requests)

Private Member Functions

void acquire_power ()
void release_power ()
void reset_streaming ()

Private Attributes

std::mutex _configure_lock
std::shared_ptr< platform::uvc_device_device
std::unique_ptr< power_power
std::mutex _power_lock
std::unique_ptr< frame_timestamp_reader_timestamp_reader
std::atomic< int > _user_count
std::vector< platform::extension_unit_xus

Additional Inherited Members

- Protected Attributes inherited from librealsense::sensor_base
std::shared_ptr< std::map< uint32_t, rs2_format > > _fourcc_to_rs2_format
std::shared_ptr< std::map< uint32_t, rs2_stream > > _fourcc_to_rs2_stream
std::vector< platform::stream_profile_internal_config
std::atomic< bool > _is_opened
std::atomic< bool > _is_streaming
std::shared_ptr< metadata_parser_map_metadata_parsers = nullptr
std::shared_ptr< notifications_processor_notifications_processor
on_open _on_open
frame_source _source
sensor_base_source_owner = nullptr
std::vector< platform::stream_profile_uvc_profiles
- Protected Attributes inherited from librealsense::options_container
std::map< rs2_option, std::shared_ptr< option > > _options
std::function< void(const options_interface &)> _recording_function = [](const options_interface&) {}

Detailed Description

Definition at line 323 of file sensor.h.

Constructor & Destructor Documentation

librealsense::uvc_sensor::uvc_sensor ( std::string  name,
std::shared_ptr< platform::uvc_device uvc_device,
std::unique_ptr< frame_timestamp_reader timestamp_reader,
device dev 

Definition at line 940 of file sensor.cpp.

librealsense::uvc_sensor::~uvc_sensor ( )

Definition at line 288 of file sensor.cpp.

Member Function Documentation

void librealsense::uvc_sensor::acquire_power ( )

Definition at line 512 of file sensor.cpp.

void librealsense::uvc_sensor::close ( )

Implements librealsense::sensor_interface.

Definition at line 449 of file sensor.cpp.

std::vector<platform::stream_profile> librealsense::uvc_sensor::get_configuration ( ) const

Definition at line 337 of file sensor.h.

std::string librealsense::uvc_sensor::get_device_path ( ) const

Definition at line 340 of file sensor.h.

platform::usb_spec librealsense::uvc_sensor::get_usb_specification ( ) const

Definition at line 339 of file sensor.h.

std::shared_ptr<platform::uvc_device> librealsense::uvc_sensor::get_uvc_device ( )

Definition at line 338 of file sensor.h.

stream_profiles librealsense::uvc_sensor::init_stream_profiles ( )

Implements librealsense::sensor_base.

Definition at line 560 of file sensor.cpp.

template<class T >
auto librealsense::uvc_sensor::invoke_powered ( action) -> decltype(action(*static_cast<platform::uvc_device*>(nullptr)))

Definition at line 343 of file sensor.h.

void librealsense::uvc_sensor::open ( const stream_profiles requests)

Implements librealsense::sensor_interface.

Definition at line 304 of file sensor.cpp.

void librealsense::uvc_sensor::register_pu ( rs2_option  id)

Definition at line 653 of file sensor.cpp.

void librealsense::uvc_sensor::register_xu ( platform::extension_unit  xu)

Definition at line 475 of file sensor.cpp.

void librealsense::uvc_sensor::release_power ( )

Definition at line 538 of file sensor.cpp.

void librealsense::uvc_sensor::reset_streaming ( )

Definition at line 505 of file sensor.cpp.

void librealsense::uvc_sensor::start ( frame_callback_ptr  callback)

Implements librealsense::sensor_interface.

Definition at line 480 of file sensor.cpp.

void librealsense::uvc_sensor::stop ( )

Implements librealsense::sensor_interface.

Definition at line 494 of file sensor.cpp.

rs2_extension librealsense::uvc_sensor::stream_to_frame_types ( rs2_stream  stream) const

Definition at line 586 of file sensor.cpp.

Member Data Documentation

std::mutex librealsense::uvc_sensor::_configure_lock

Definition at line 389 of file sensor.h.

std::shared_ptr<platform::uvc_device> librealsense::uvc_sensor::_device

Definition at line 386 of file sensor.h.

std::unique_ptr<power> librealsense::uvc_sensor::_power

Definition at line 391 of file sensor.h.

std::mutex librealsense::uvc_sensor::_power_lock

Definition at line 388 of file sensor.h.

std::unique_ptr<frame_timestamp_reader> librealsense::uvc_sensor::_timestamp_reader

Definition at line 392 of file sensor.h.

std::atomic<int> librealsense::uvc_sensor::_user_count

Definition at line 387 of file sensor.h.

std::vector<platform::extension_unit> librealsense::uvc_sensor::_xus

Definition at line 390 of file sensor.h.

The documentation for this class was generated from the following files:

Author(s): Sergey Dorodnicov , Doron Hirshberg , Mark Horn , Reagan Lopez , Itay Carpis
autogenerated on Mon May 3 2021 02:50:38