Intel® RealSense™ Cross Platform API
Intel Realsense Cross-platform API
ivcam-device.h
Go to the documentation of this file.
1 // License: Apache 2.0. See LICENSE file in root directory.
2 // Copyright(c) 2015 Intel Corporation. All Rights Reserved.
3 
4 #pragma once
5 #ifndef LIBREALSENSE_IV_CAMERA_H
6 #define LIBREALSENSE_IV_CAMERA_H
7 
8 #include "ivcam-private.h"
9 #include "device.h"
10 
11 namespace rsimpl
12 {
13  struct cam_mode { int2 dims; std::vector<int> fps; };
14 
17  void update_supported_options(uvc::device& dev,
19  const std::vector <std::pair<rs_option, char>> options,
20  std::vector<supported_option>& supported_options);
21 
22  class iv_camera : public rs_device_base
23  {
24  protected:
25  std::timed_mutex usbMutex;
26 
29 
30  public:
31  iv_camera(std::shared_ptr<uvc::device> device, const static_device_info & info, const ivcam::camera_calib_params & calib);
32  ~iv_camera() {};
33 
34  void on_before_start(const std::vector<subdevice_mode_selection> & selected_modes) override;
35  rs_stream select_key_stream(const std::vector<rsimpl::subdevice_mode_selection> & selected_modes) override;
36 
37  void set_options(const rs_option options[], size_t count, const double values[]) override;
38  void get_options(const rs_option options[], size_t count, double values[]) override;
39 
40  std::vector<std::shared_ptr<frame_timestamp_reader>> create_frame_timestamp_readers() const override;
41 
42  void start_fw_logger(char fw_log_op_code, int grab_rate_in_ms, std::timed_mutex& mutex) override;
43  void stop_fw_logger() override;
44  };
45 }
46 
47 #endif // IV_CAMERA_H
rs_stream
rs_stream
Streams are different types of data provided by RealSense devices.
Definition: rs.h:33
rsimpl::iv_camera::usbMutex
std::timed_mutex usbMutex
Definition: ivcam-device.h:25
rsimpl::iv_camera::base_calibration
ivcam::camera_calib_params base_calibration
Definition: ivcam-device.h:27
rsimpl::static_device_info
Definition: types.h:268
rsimpl::cam_mode::dims
int2 dims
Definition: ivcam-device.h:13
rsimpl::iv_camera::create_frame_timestamp_readers
std::vector< std::shared_ptr< frame_timestamp_reader > > create_frame_timestamp_readers() const override
device.h
rsimpl::iv_camera::set_options
void set_options(const rs_option options[], size_t count, const double values[]) override
rsimpl::ivcam::cam_auto_range_request
Definition: ivcam-private.h:45
rsimpl::iv_camera::start_fw_logger
void start_fw_logger(char fw_log_op_code, int grab_rate_in_ms, std::timed_mutex &mutex) override
rsimpl::iv_camera::on_before_start
void on_before_start(const std::vector< subdevice_mode_selection > &selected_modes) override
rsimpl
Definition: archive.h:12
rsimpl::iv_camera::stop_fw_logger
void stop_fw_logger() override
rsimpl::iv_camera
Definition: ivcam-device.h:22
rsimpl::iv_camera::select_key_stream
rs_stream select_key_stream(const std::vector< rsimpl::subdevice_mode_selection > &selected_modes) override
rsimpl::MakeColorIntrinsics
rs_intrinsics MakeColorIntrinsics(const ivcam::camera_calib_params &c, const int2 &dims)
rsimpl::iv_camera::arr
ivcam::cam_auto_range_request arr
Definition: ivcam-device.h:28
rs_intrinsics
Video stream intrinsics.
Definition: rs.h:300
rsimpl::update_supported_options
void update_supported_options(uvc::device &dev, const uvc::extension_unit depth_xu, const std::vector< std::pair< rs_option, char >> options, std::vector< supported_option > &supported_options)
rs_option
rs_option
Defines general configuration controls.
Definition: rs.h:128
rsimpl::cam_mode::fps
std::vector< int > fps
Definition: ivcam-device.h:13
rsimpl::cam_mode
Definition: ivcam-device.h:13
rsimpl::iv_camera::~iv_camera
~iv_camera()
Definition: ivcam-device.h:32
rsimpl::uvc::extension_unit
Definition: uvc.h:23
rsimpl::ivcam::camera_calib_params
Definition: ivcam-private.h:16
rsimpl::iv_camera::get_options
void get_options(const rs_option options[], size_t count, double values[]) override
rsimpl::MakeDepthIntrinsics
rs_intrinsics MakeDepthIntrinsics(const ivcam::camera_calib_params &c, const int2 &dims)
rs_device_base
Definition: device.h:74
rsimpl::int2
Definition: types.h:109
rsimpl::iv_camera::iv_camera
iv_camera(std::shared_ptr< uvc::device > device, const static_device_info &info, const ivcam::camera_calib_params &calib)
rsimpl::ivcam::depth_xu
const uvc::extension_unit depth_xu
Definition: ivcam-private.h:14
ivcam-private.h