Intel® RealSense™ Cross Platform API
Intel Realsense Cross-platform API
f200.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_F200_H
6 #define LIBREALSENSE_F200_H
7 
8 #include <atomic>
9 #include <thread>
10 #include <condition_variable>
11 
12 #include "ivcam-device.h"
13 
14 
15 #define F200_PRODUCT_ID 0x0a66
16 
17 namespace rsimpl
18 {
19  class f200_camera final : public iv_camera
20  {
21  f200::cam_temperature_data base_temperature_data;
22  f200::thermal_loop_params thermal_loop_params;
23 
24  float last_temperature_delta;
25 
26  std::thread temperatureThread;
27  std::atomic<bool> runTemperatureThread;
28  std::mutex temperatureMutex;
29  std::condition_variable temperatureCv;
30 
31  void temperature_control_loop();
32 
33  public:
34  f200_camera(std::shared_ptr<uvc::device> device, const static_device_info & info, const ivcam::camera_calib_params & calib, const f200::cam_temperature_data & temp, const f200::thermal_loop_params & params);
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  virtual void start_fw_logger(char fw_log_op_code, int grab_rate_in_ms, std::timed_mutex& mutex) override;
41  virtual void stop_fw_logger() override;
42  };
43 
44  std::shared_ptr<rs_device> make_f200_device(std::shared_ptr<uvc::device> device);
45 }
46 
47 #endif
Definition: f200.h:20
void get_options(const rs_option options[], size_t count, double values[]) override
void set_options(const rs_option options[], size_t count, const double values[]) override
f200_camera(std::shared_ptr< uvc::device > device, const static_device_info &info, const ivcam::camera_calib_params &calib, const f200::cam_temperature_data &temp, const f200::thermal_loop_params &params)
virtual void stop_fw_logger() override
virtual void start_fw_logger(char fw_log_op_code, int grab_rate_in_ms, std::timed_mutex &mutex) override
Definition: ivcam-device.h:23
Definition: archive.h:13
std::shared_ptr< rs_device > make_f200_device(std::shared_ptr< uvc::device > device)
rs_option
Defines general configuration controls.
Definition: rs.h:129
Definition: ivcam-private.h:162
Definition: ivcam-private.h:169
Definition: ivcam-private.h:17
Definition: types.h:269