ivcam-device.h
Go to the documentation of this file.
00001 // License: Apache 2.0. See LICENSE file in root directory.
00002 // Copyright(c) 2015 Intel Corporation. All Rights Reserved.
00003 
00004 #pragma once
00005 #ifndef LIBREALSENSE_IV_CAMERA_H
00006 #define LIBREALSENSE_IV_CAMERA_H
00007 
00008 #include "ivcam-private.h"
00009 #include "device.h"
00010 
00011 namespace rsimpl
00012 {
00013     struct cam_mode { int2 dims; std::vector<int> fps; };
00014 
00015     rs_intrinsics MakeDepthIntrinsics(const ivcam::camera_calib_params & c, const int2 & dims);
00016     rs_intrinsics MakeColorIntrinsics(const ivcam::camera_calib_params & c, const int2 & dims);
00017     void update_supported_options(uvc::device& dev,
00018         const uvc::extension_unit depth_xu,
00019         const std::vector <std::pair<rs_option, char>> options,
00020         std::vector<supported_option>& supported_options);
00021 
00022     class iv_camera : public rs_device_base
00023     {
00024     protected:
00025         std::timed_mutex usbMutex;
00026 
00027         ivcam::camera_calib_params base_calibration;
00028         ivcam::cam_auto_range_request arr;
00029 
00030     public:
00031         iv_camera(std::shared_ptr<uvc::device> device, const static_device_info & info, const ivcam::camera_calib_params & calib);
00032         ~iv_camera() {};
00033 
00034         void on_before_start(const std::vector<subdevice_mode_selection> & selected_modes) override;
00035         rs_stream select_key_stream(const std::vector<rsimpl::subdevice_mode_selection> & selected_modes) override;
00036         
00037         void set_options(const rs_option options[], size_t count, const double values[]) override;
00038         void get_options(const rs_option options[], size_t count, double values[]) override;
00039 
00040         std::vector<std::shared_ptr<frame_timestamp_reader>> create_frame_timestamp_readers() const override;
00041 
00042         void start_fw_logger(char fw_log_op_code, int grab_rate_in_ms, std::timed_mutex& mutex) override;
00043         void stop_fw_logger() override;
00044     };
00045 }
00046 
00047 #endif  // IV_CAMERA_H


librealsense
Author(s): Sergey Dorodnicov , Mark Horn , Reagan Lopez
autogenerated on Tue Jun 25 2019 19:54:39